|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
Всё началось с поста 13903561 . Решил проверить скорость. Мой алгоритм был чуть длинне, но в итоге на 10% быстрее. Тестирование производилось в VFP. На диапазоне дней 30 000 000 время расчета составило 77 секунд для варианта предложенного человеком и примерно 66-67 секунд для моего. Думаю дай тоже самое сделаю на С# и сравню с Java по скорости. Но выяснилась одна пренеприятнейшая вещь: в C# есть ограничение на макс. год (в Java таких ограничений нет), поэтому диапазон дней пришлось сократить с 30 000 000 до 2 900 000 дней. Вот исходники тестов (GUI, обработчик на Click кнопки на форме) C# Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
Java (такой же обработчик клика на кнопке) Код: java 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.
Было взято 2 тестовые машины: 1-я - Athlon X2 64 Dual 3800+, 2.0ГГц, вторая - Intel Core i5-2430 2.4ГГц до 3ГГц (турбо), На обеих машинах Windows 7 Pro, .NET 4.0.xxxx, Java 7, IDE - NetBeans. Платформа АМД (сек) Интел (сек).NET C# ~3.66 ~1.2Java~3.56~0.5 Я, конечно, был шокирован и огорчен. Такой подставы от MS не ожидал. Ну, думаю, наверное какая-то особенность .NET при работе с датой. Дай-ка другой тест сделаю - решето Эратосфена . На этот раз создавались консольные тестовые приложения. Ниже приводиться текст только главной процедуры: C# Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
Тоже самое, но на Java Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
Ну и рез-таты: Платформа АМД (сек) Интел (сек).NET C# ~9.02 ~2.9Java~0.78~0.254 Я ничего , конечно, утверждать не буду, но какого хрена MS делает ? Что это такое ? Это означает, что .NET платформа - полная лажа и если при работе с объектами разница не столь велика, то при работе с памятью совсем всё плохо. Может я что-то не так делаю ? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2013, 23:33 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
thunder2Это означает, что .NET платформа - полная лажа а куда спешить? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2013, 23:42 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
thunder2Может я что-то не так делаю Определённо да. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2013, 23:44 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
thunder2 Код: c# 1.
Тоже самое, но на Java Код: java 1.
на .net на граница порядок больше ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2013, 23:44 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
thunder2, Это точно одинаковые строки? Код: c# 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2013, 23:47 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
Гудронthunder2 Код: c# 1.
Тоже самое, но на Java Код: java 1.
на .net на граница порядок больше Точно ! Щас чел поправит, перезапущу и проверим. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2013, 23:52 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
beg-in-erthunder2, Это точно одинаковые строки? Код: c# 1. 2.
Да, одинаково. Просто в Jave можно заполнить массив нужным значением, а в C# - нет. Поэтому, исходя из того, что после new PrimeNumbers(UpperBound) массив заполнен false, то я просто инвертировал в алгоритме признак "зачеркивания". Вот и всё. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2013, 23:54 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
thunder2 Да, одинаково.[/quot] ну мож быть только странно как Java интерпретирует такую строку. на весь массив или на элемент. только на какой if (isPrime) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2013, 00:03 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
thunder2, вы бы для начала ртфм queryperformanceblablabla функции для замера времени. потом ртфм .net, а потом написали бы близкие на сколько позволяют знания алгоритмы. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2013, 00:07 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
Гудронthunder2 Код: c# 1.
Тоже самое, но на Java Код: java 1.
на .net на граница порядок больше Поправили, вот рез-тат. Платформа АМД (сек) Интел (сек).NET C#~9.02 ~2.9Java~9.4~2.75 Прощу прощения за ложную тревогу. Хоть с объектами Java работает чу-у-у-точку быстрее, но алгоритмы обрабатываются практически одинаково или в пределах статистической погрешности. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2013, 00:08 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
thunder2, вы все таки поясните, что значит конструкция Код: java 1.
скорее всего это раскрывается как Код: java 1.
, что в вашем контексте всегда true. на .net вместо этого обращение в память ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2013, 00:14 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
Intel(R) Core(TM) i7-960 3.20 GHz Calculation time is 0,2178724s Calculation time is 0,2179551s Calculation time is 0,1979096s Calculation time is 0,2215236s Calculation time is 0,1934516s Calculation time is 0,1826872s Calculation time is 0,1691474s Calculation time is 0,1761205s Calculation time is 0,167197s Calculation time is 0,1675593s Calculation time is 0,1647399s Calculation time is 0,1656472s Calculation time is 0,1666657s Calculation time is 0,200919s Calculation time is 0,2177192s Calculation time is 0,1987847s Calculation time is 0,1789138s Calculation time is 0,1720064s Calculation time is 0,1645467s Calculation time is 0,1679415s ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2013, 00:22 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
Гудронthunder2, вы все таки поясните, что значит конструкция Код: java 1.
скорее всего это раскрывается как Код: java 1.
, что в вашем контексте всегда true. на .net вместо этого обращение в память Ребята, просто "[]" при вставке в пост потерялись. Есть они в исходнике, только что проверил. Просто код на Java не я писал, а другой человек (не воспринимайте как отмазку, рельно так) ну и при копировании из аськи скобки потерялись. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2013, 00:31 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
skyANA Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
Intel(R) Core(TM) i7-960 3.20 GHz Calculation time is 0,2178724s Calculation time is 0,2179551s Calculation time is 0,1979096s Calculation time is 0,2215236s Calculation time is 0,1934516s Calculation time is 0,1826872s Calculation time is 0,1691474s Calculation time is 0,1761205s Calculation time is 0,167197s Calculation time is 0,1675593s Calculation time is 0,1647399s Calculation time is 0,1656472s Calculation time is 0,1666657s Calculation time is 0,200919s Calculation time is 0,2177192s Calculation time is 0,1987847s Calculation time is 0,1789138s Calculation time is 0,1720064s Calculation time is 0,1645467s Calculation time is 0,1679415s Хочу интеловый проц ))) И за StopWatch спасибо, пока бенчмарком не занялся не требовалось. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2013, 00:46 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
thunder2, по сабжу , как то тестил алгоритм с массивом интов в шарпе и на сях. скорость си-кода была на 40-70% быстрее. авторFor vs Linq 2,9705883139307 linq vs cpp 5,19159001215819 c# vs cpp 1,74766391822522 аглоритм Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2013, 00:49 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
thunder2, авторХочу интеловый проц ) таки да, при равных процах Intel и AMD скорость может раза в 2 отличатся. проверено. факт. кэша 3го уровня нема. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2013, 00:50 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
Подгоняем под ответ (Intel i5(TM) 2.79GHz) Average calculation time is 0.287077835s Код: c# 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2013, 01:25 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
еще раз убедился в ничтожности AMD процессоров ) да здравствует Интел :) Хаель Интель :)) спасибо, почитал с интересом, хорошо, что в результате оказалось всё не так печально :) и мне не понятны нападки на автора, если вы опытнее и умнее, это не повод язвить, а повод помочь, если вы действительно умнее конечно же :) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2013, 06:47 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
Roman Mejtesи мне не понятны нападки на автора, если вы опытнее и умнее, это не повод язвить, а повод помочь, если вы действительно умнее конечно же :)Где Вы в этой теме увидели нападки, милейший? Или о чём Вы вообще? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2013, 08:08 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
а вы кстапти под какой Нет запускали? конфигурация release,debug? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2013, 08:16 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
i7-2600k ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2013, 17:40 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2013, 17:41 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
Denis., можно создать тему, где все на своих драндулетах сделают тест и напишут конф. системы ) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2013, 08:48 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
netivanа вы кстапти под какой Нет запускали? конфигурация release,debug? +1 ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2013, 09:57 |
|
производительность Java vs C#
|
|||
---|---|---|---|
#18+
Производительность очень зависит от Вашего кода. Есть много, друг Горацио, что и не снилось всяким-там мудрецам. В яве имеется очень много нативных программ, написанных на сях, а то и на ассемблере. Та же самая фигня имеется в дотнет. Короче, сравнивать - глупо и бессмысленно. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2013, 12:43 |
|
|
start [/forum/topic.php?fid=20&msg=38168864&tid=1405075]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
54ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
2ms |
others: | 313ms |
total: | 474ms |
0 / 0 |