Java versus C++ (2nd round)

j’avais mis en ligne un premier résultat de test montrant que Java pouvait concurrence C++ dans le registre de la performance.

Afin de compléter ce premier résultat, j’ai poursuivi ma comparaison en accroissant le volume de calcul à réaliser ( volume des données et précision de calcul). Ce 2nd résultat confirme le premier test et encore une fois, la version Java de mon programme est autant performante (ou aussi peu pour les mauvaises langues) que ma version C++.

Voici les résultats :

C++/MPI

nb Dec Tps moyen Tps tot Prec moy Prec U
1 693,49 693,49 -5,39E-004 8,51E-004
2 689,225 1378,45 1,50E-005 7,65E-004
4 496,445 1985,78 -5,48E-005 5,12E-005
8 212,62 1700,96 2,54E-005 1,43E-005
16 89,039375 1424,63 3,14E-005 8,89E-006

Java/Jace

nb Dec Tps moyen Tps tot Prec moy Prec U
1 608,1793823242 608,1793823242 4,87E-007 1,53E-003
2 596,3627929688 1192,7255859375 -1,43E-004 7,35E-004
4 492,4767684937 1969,9070739746 -4,16E-010 4,22E-004
8 197,4866099358 1579,8928794861 -1,61E-005 8,70E-005
16 88,004909873 1408,0785579681 6,35E-006 1,15E-005

Voici les conditions de test :

Java utilisée :
java version « 1.6.0_16 »
Java(TM) SE Runtime Environment (build 1.6.0_16-b01)
Java HotSpot(TM) 64-Bit Server VM (build 14.2-b01, mixed mode)

C++ : (Configuration du mésocentre)
Option d’optimisation -O2 (à vérifier la compatibilité de cette option
avec ICC)
Compilateur : ICC
MPI : openMPI (Intel)

L’ensemble des tests ont été réalisé sur mésoshared un jour de calme ^^

[ad#Google Adsense]

Java Vs C++

Quand un logiciel est en cours de phase initial ou lors d’un changement majeur, la question du choix du langage peut être posé.

Mon projet étant essentiellement basé sur de l’apprentissage de réseau de neurones, la performance se doit être maximum … Et pour beaucoup, C++ s’imposerait donc sans équivoque.

[ad#Google Adsense]

Oui mais, cette évidence est peut être à remettre en cause. Dans mon cas, et pour des raisons de recherche, j’ai réalisé une version Java et une version C++, ce qui donnera en parallèle, une version utilisant MPI et l’autre utilisante JaceMPI, un environnement en cours de développement.

Le premier résultat est sans équivoque, pour un apprentissage rapide :

C++ => 11.8 s
Java => 10.7 s

La différence n’est pas flagrante … mais le langage en tête n’est pas celui attendu.

[ad#Google Adsense]

Le premier n° de Mathematica Æterna est sorti

Ce premier numéro est relativement léger et propose le contenu suivant :

Paul Bracken
Surfaces of Arbitrary Constant Negative Gaussian Curvature and Related Sine-Gordon Equations
Math.Aeterna,Vol.1, 2011, no. 01, 1-11

Samy Skander Bahoura
sup X inf inequality on manifold of dimension 3
Math. Aeterna, Vol.1, 2011, no. 01, 12 – 25

Daiheng Ni
Multiscale Modeling of Traffic Flow
Math. Aeterna, Vol.1, 2011, no. 01, 26 – 53

Arun Kumar, Ram Dayal Pankaj and Chandra Prakash Gupta
Description of a wave-wave interaction model by Variational and Decomposition methods
Math. Aeterna, Vol. 1, 2011, no. 01, 54 – 62

Comme c’est une revue en open acces, il est librement lisible à cette adresse : http://www.e-hilaris.com/volume1.html

Bonne lecture

[ad#Google Adsense]

Mise à jour de ma bibliographie


Fatal error: Uncaught Error: Call to undefined function split() in /homepages/23/d147001265/htdocs/pagesPerso/wordPress/wp-content/plugins/bib2html/OSBiB/format/BIBFORMAT.php:180 Stack trace: #0 /homepages/23/d147001265/htdocs/pagesPerso/wordPress/wp-content/plugins/bib2html/OSBiB/format/BIBFORMAT.php(126): BIBFORMAT->typesToArray(Array) #1 /homepages/23/d147001265/htdocs/pagesPerso/wordPress/wp-content/plugins/bib2html/bib2html.php(73): BIBFORMAT->getStyle(Array, Array) #2 /homepages/23/d147001265/htdocs/pagesPerso/wordPress/wp-content/plugins/bib2html/bib2html.php(146): bib2htmlProcess('@article{Neurad...', NULL, NULL) #3 /homepages/23/d147001265/htdocs/pagesPerso/wordPress/wp-includes/class-wp-hook.php(286): bib2html('Un petit effort...') #4 /homepages/23/d147001265/htdocs/pagesPerso/wordPress/wp-includes/plugin.php(203): WP_Hook->apply_filters('Un petit effort...', Array) #5 /homepages/23/d147001265/htdocs/pagesPerso/wordPress/wp-includes/post-template.php(240): apply_filters('the_content', 'Un petit effort...') #6 /h in /homepages/23/d147001265/htdocs/pagesPerso/wordPress/wp-content/plugins/bib2html/OSBiB/format/BIBFORMAT.php on line 180