Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

gcj [suite de:] Re: Dans certains domaines, et avec une programmation pas trop degeux, Java EST performant

1 réponse
Avatar
google
Salut Jean-Marc,
Ton test a un certain nombre de problemes.
a) 0.9999999 est vu comme 1.
b) C++ long est equiv a Java int
c) et surtout pas d'exploitation du resultat
J'ai donc modifie et le resultat est que C++, C++ opt, Java, Java opt
et GCJ 3.3.1 ont les memes performances (ce qui n'est pas surprenant
sur un tel test).
Cordialement, Guillaume

// Java

public final class MesurePerf {
public static void main(String[] args) {
final int nbStep = 100000000;
long tCPU = System.currentTimeMillis();
double t = 1.;
final double r = 0.9;

for ( int i = 0; i < nbStep; i++ ) {
t = t * r;
}
tCPU = - tCPU + System.currentTimeMillis();
System.out.println(nbStep + " multiplications en " +
tCPU + " millisecondes. T="+t);
}
}

// C++

long currentTimeMillis() {
clock_t t = clock();
return (long)t;
}

int main( int argc, char** argv ) {
const long nbStep = 100000000;
long tCPU = currentTimeMillis();
double t = 1.;
const double r = 0.9;

for ( long i = 0; i < nbStep; i++ ) {
t = t * r;
}
tCPU = ( - tCPU + currentTimeMillis() ) /
( CLOCKS_PER_SEC/1000 );

cout << nbStep << " multiplications en " <<
tCPU << " millisecondes. T=" << t << endl;
cout.flush();
}

1 réponse

Avatar
remy
bonjour


si tu a un peut de temp
peut tu faire un teste

par exemple

un vecteur remplie de 100k0
l'efface

le tout une 100 de fois


a+ remy