Bonjour,

A la base j'avais un programme en java que j'ai voulu traduire en C pour gagner en performances.

Ce programme lit un tableau dans un fichier puis pendant le reste du temps le programme fait des opérations élémentaires sur ce tableau et celui-ci grandit peu à peu.

Sous Windows mon programme C est 24% plus rapide que ce même programme en Java. Par contre sous linux le programme C est 2 ou 3 fois plus lent que le même en Java.

C'est sur ce dernier point que j'aimerai avoir d'avantage d'informations, qu'est ce qui peut faire qu'un programme en C est plus lent que l'équivalent en java et cela exclusivement sous linux?

A noter que je recompile bien a chaque fois mon programme sur l'OS concerné avant l''exécution. Mon windows fonctionne sous 32bits et linux est sous 64bits.

En résumer:

Sous Windows XP 32 bits:
- Le programme C fonctionne plus vite que celui en java

Sous SL (linux) 64 bits:
- Le programme C fonctionne moins vite que celui en java


Le programme java sous linux fonctionnant +- 100% plus vite que le même programme sous Windows.

Merci beaucoup pour vos précieuses réponses