Salut,
J'ai toujours des problèmes avec le timer .
mon probleme cette fois concerne la méthode:
getThreadCpuTime(Thread.currentThread().getId());
qui me donne à chaque exécution une valeure différente de l'autre
quelq'un m'explique pourquoi.
Voici mon code :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| import java.lang.management.ManagementFactory;
import java.lang.management.ThreadMXBean;
public class perfor {
public static void main(String[] args)throws Exception
{
long start=System.nanoTime();
System.out.println("start :"+start);
int pr=0;
int l=300;
int tab1[][];
int tab2[][];
int tab3[][];
tab1=new int[l][l];
tab2=new int[l][l];
tab3=new int[l][l];
for ( int i=0 ; i<l; i++){
for ( int j=0 ; j<l; j++){
tab1[i][j]=25 ;
tab2[i][j]=10 ;
}}
for ( int j=0 ; j<l; j++){
for ( int k=0 ; k<l; k++){pr=0;
for (int i=0;i<l;i++){
pr=pr+tab1[k][i]*tab2[i][j];
tab3[k][j]=pr;
}}}
//stop = objPerf.highResCounter() * 1000 / frequency;
long stop=System.nanoTime();
System.out.println("stop :"+stop);
System.out.println((stop-start)/1000000);
ThreadMXBean threads = ManagementFactory.getThreadMXBean();
long star = threads.getThreadCpuTime(Thread.currentThread().getId());
System.out.println("star"+star/1000000);
}
} |
Je vous attends
Partager