powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Бенчмарки C#, C++, Java, Delphi
25 сообщений из 265, страница 8 из 11
Бенчмарки C#, C++, Java, Delphi
    #34482346
Yuric74
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vitalekБыла робкая надежда увидеть цифры по второму тесту для D2007, C# и Java:) Но желающих, видимо, нет. Самому качать D2007 ради одного теста - тоже жаба душит
У меня сегодня D2007 докачается, поставлю, прогоню тесты, отпишусь.
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34485019
Master Alex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vitalekБыла робкая надежда увидеть цифры по второму тесту для D2007, C# и Java:) Но желающих, видимо, нет.
Да, не густо, прямо скажем. Итак, вечерние забеги. В них добавлена новая версия Delphi 10 (call procedure) + Java + С#.
Код: plaintext
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.
44.
45.
46.
Intel Core Duo E6600 ( 3 . 1  Ghz)

Intel C++	   3531  ms
Delphi10 proc	   3625  ms
C++Builer          4360  ms
VC++  2005  	   4469  ms
Delphi10 goto	   4519  ms
Delphi10 repeat    5172  ms
C#                 5300  ms
Java  1 . 6           10234  ms


AMD Athlon  64   3000 + ( 2  Ghz)

Intel C++	   8328  ms
Delphi10 proc	   8875  ms
Delphi10 goto	   9157  ms
C++Builer          9400  ms
VC++  2005  	  10656  ms
C#                11375  ms
Delphi10 repeat   11391  ms
Java  1 . 6           16000  ms


INTEL M760 ( 2  Ghz)

Intel C++	   7187  ms
Delphi10 goto	   7344  ms
Delphi10 proc	   8046  ms
Delphi10 repeat    8500  ms
C++Builer          8550  ms
VC++  2005  	   8640  ms
C#                12156  ms
Java  1 . 6           20900  ms


P4 ( 2 . 6  Ghz)

Intel C++	  7484  ms
Delphi10 goto	  7813  ms
C++Builer         7907  ms
Delphi10 proc	  9141  ms
Delphi10 repeat   9422  ms
VC++  2005  	 10344  ms
C#               12031  ms
Java  1 . 6          17312  ms
Исходники + бинарники:
http://www.mycoolfotos.com/lzma/repeat_goto.zip (371 KB)
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34485640
NotGonnaGetUs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Master AlexИсходники + бинарники:
http://www.mycoolfotos.com/lzma/repeat_goto.zip (371 KB)

А что делают все эти программы? Ссылочку на сообщение с описанием задания хотя бы.

У меня с фантазией вроде не плохо, но понять, что нужно делать c массивом, чтобы получить в результате из набора чисел
{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0}
набор
{0, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 13, 14, 15, 16, 17, 18, 19, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0}
(причём потратив на это 25 секунд на java на 3ггц пне) я не смог :(
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34485671
NotGonnaGetUs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NotGonnaGetUsА что делают все эти программы? Ссылочку на сообщение с описанием задания хотя бы.

Боже мой. Да это же генерация перестановок...
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34486007
NotGonnaGetUs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NotGonnaGetUs

Боже мой. Да это же генерация перестановок...

Предалгаю использовать такой вариант решения для java )
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34486318
Master Alex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NotGonnaGetUsПредалгаю использовать такой вариант решения для java )
Спасибо! Сейчас перезапущу и выложу результаты.
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34486847
NotGonnaGetUs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Master Alex NotGonnaGetUsПредалгаю использовать такой вариант решения для java )
Спасибо! Сейчас перезапущу и выложу результаты.

Не обратил внимание на ещё одну оптимизацию, после которой всё бегает в 2 раза быстрее.

Код прилагается.

У меня получились следующие результаты на п4, 3ггц:

java 6:

Count: 479001600
Time: 5628 (ms)

с# 2 (release, код в один один из java):

Count: 479001600
Time: 00:00:08.9028016 (ms)
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34486849
NotGonnaGetUs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NotGonnaGetUsКод прилагается.
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34486974
NotGonnaGetUs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Задело, трудно остановиться :)

Прилагается код на java, который бегает быстрее решения на C++, собранного компилятором от интел.

java 1.6:

Count: 479001600
Time: 2874 (ms)

c#:

Count: 479001600
Time: 00:00:04.6667104 (ms)
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34487158
NotGonnaGetUs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тихо, сам с собою...
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34487221
Master Alex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NotGonnaGetUsТихо, сам с собою...

Просто убил :)
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34487240
Yuric74
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
NotGonnaGetUsТихо, сам с собою...
Вот уж точно :)
Вопрос не в том, чтобы написать оптимальный алгоритм перестановок, а в сравнении одного и того же алгоритма на разных языках.
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34487271
NotGonnaGetUs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yuric74 NotGonnaGetUsТихо, сам с собою...
Вот уж точно :)
Вопрос не в том, чтобы написать оптимальный алгоритм перестановок, а в сравнении одного и того же алгоритма на разных языках.

А я этим и занимаюсь :) Сравниваю Java и С#.

Результат самый что ни на есть увлекательный. Смотрим:

Есть два алгоритма А1 и А2. Оба без изменений пускаются на java/c#.
Для одного получаем, что с# выигрывает у java, для другого - в точности наоборот (в полтора раза).
Примечательно, что А1 и А2 решаеют ОДНУ И ТУЖЕ задачу.


О чём это говорит? Только о том, что эффективный алгоритм решения одной и той же задачи для разных языков будет разным.

Следствием данного наблюдения является бессмысленность замеров, которые проводятся в этом топике вот уже 8 старниц :)
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34487316
Yuric74
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
NotGonnaGetUsА я этим и занимаюсь :) Сравниваю Java и С#.
Это правильно :)
NotGonnaGetUsО чём это говорит? Только о том, что эффективный алгоритм решения одной и той же задачи для разных языков будет разным.
Не всегда, в данном конкретном случае - да.
NotGonnaGetUsСледствием данного наблюдения является бессмысленность замеров, которые проводятся в этом топике вот уже 8 старниц :)
В результате этих замеров выяснилось, что в Delphi эффективность компиляции разных циклов - разная. Скорость выполнения for меньше, чем repeat, например. Так что замеры далеко не бессмыслены.
И если прочитаете ветку целиком, то мой первый пост - это вопрос о том, почему один и тот же код выполняется на разных версиях Delphi с разной скоростью.
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34487340
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yuric74В результате этих замеров выяснилось, что в Delphi эффективность компиляции разных циклов - разная. Скорость выполнения for меньше, чем repeat, например.
Ну этот результат легко было предсказать и без замеров. Вот если бы замеры показали одинаковое время, тогда стоило бы удивляться.
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34487350
NotGonnaGetUs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yuric74

Цели в этом топике у всех разные, как легко убедиться.

Вас интересуют циклы дельфи, Master Alex'a скорость работы одних и тех же алгоритмов (причём не обязательно один в один похожих), меня - почему вдруг java оказалась тормознутее c# %)

В итоге то, что интересному одному из нас (циклы в дельфи), вовсе не обязательно полезный выход для другого :)
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34487372
Yuric74
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
softwarerНу этот результат легко было предсказать и без замеров.
Как, если не секрет? Я думал, что цикл for на асме (после компиляции) - это проверка условия выхода из цикла, затем тело цикла, инкремент регистра счетчика и jmp обратно на проверку. И while можно скомпилить так же. Почему тогда разница между for и while? Надо дома еще раз посмотреть дизассемблированный код.
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34487382
Yuric74
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
NotGonnaGetUsВ итоге то, что интересному одному из нас (циклы в дельфи), вовсе не обязательно полезный выход для другого :)
Вот это я точно мог предсказать :)
Но мне интересны не только результаты Delphi, но и все остальные тоже.
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34487451
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yuric74Как, если не секрет?
Циклы while/repeat, равно как и сишный цикл for, вычисляют свои аргументы на каждом шаге цикла. В отличие от них, паскалевский for вычисляет свои аргументы только один раз. Сводить второй случай к первому - неэффективно. Проверять, не сводится ли первый случай ко второму - весьма трудно. Таким образом, есть все основания предполагать разную реализацию кодогенерации для этих случаев.

Yuric74Я думал, что цикл for на асме (после компиляции) - это проверка условия выхода из цикла, затем тело цикла, инкремент регистра счетчика и jmp обратно на проверку.
Ну это зависит от. Например, компилятор попытается заменить инкремент декрементом, а проверку перенести в конец цикла.
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34487989
Master Alex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NotGonnaGetUs
О чём это говорит? Только о том, что эффективный алгоритм решения одной и той же задачи для разных языков будет разным.

Чтобы это доказать, надо на всех языках использовать реализацию одного и того же алгоритма - а у тебя оптимизированная версия и только для Java. Типа мы тут замеряем реализацию пузырьковой сортировки, а ты на Java реализовал QuickSort :)
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34488299
Master Alex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NotGonnaGetUs
У меня получились следующие результаты на п4, 3ггц:

java 6:

Count: 479001600
Time: 5628 (ms)

с# 2 (release, код в один один из java):

Count: 479001600
Time: 00:00:08.9028016 (ms)

У меня вышло чуть по другому:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
Intel Core Duo E6600 ( 3 . 1  Ghz)

Java (opt)  1 . 6  server   1000  ms
C#(opt)                 1062  ms                


AMD Athlon  64   3000 + ( 2  Ghz)

Java(opt)  1 . 6  server    1750  ms
C#(opt)                 1760  ms


INTEL M760 ( 2  Ghz)

Java(opt)  1 . 6  server    1800  ms
C#(opt)                 1828  ms    


P4 ( 2 . 6  Ghz)

C#(opt)                 1703  ms
Java(opt)  1 . 6  server    1875  ms
Исходники + бинарники:
http://www.mycoolfotos.com/lzma/repeat_goto.zip (371 KB)
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34489096
vitalek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Master Alex vitalekБыла робкая надежда увидеть цифры по второму тесту для D2007, C# и Java:) Но желающих, видимо, нет.
Да, не густо, прямо скажем. Итак, вечерние забеги. В них добавлена новая версия Delphi 10 (call procedure) + Java + С#.


В смысле? 10-я версия - это вроде как D2006. А самая свежая - это D2007. Если имеется ввиду всё-таки 2007-я, то ускорения по сравнению с D10 нет...
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34489121
NotGonnaGetUs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Master Alex NotGonnaGetUs
О чём это говорит? Только о том, что эффективный алгоритм решения одной и той же задачи для разных языков будет разным.

Чтобы это доказать, надо на всех языках использовать реализацию одного и того же алгоритма - а у тебя оптимизированная версия и только для Java. Типа мы тут замеряем реализацию пузырьковой сортировки, а ты на Java реализовал QuickSort :)

Ну не правда. Я сравнивал java и c# на _одинаковых_ алгоритмах и пришёл к выводу, что пузырьковую сортировку с# делает быстрее, а java делает быстрее quicksort.

Кстати, мои результаты действительно не корректны получились.
Я запускал и java, и c# программики из IDE (Idea, VS2005). Idea никак не влияет на скорость выполнение, а vs2005, оказалось, замедляет выполнение в полтора раза.
Перезапуски без IDE показали, что java и с# работают одинаково быстро.
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34489239
ещё хочу
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Master AlexУ меня вышло чуть по другому:
А не трудно будет запустить opt-алгоритм на с++/дельфи? Интересно во сколько раз эти языки быстрее справятся с задачей.
...
Рейтинг: 0 / 0
Бенчмарки C#, C++, Java, Delphi
    #34489608
Master Alex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ещё хочу Master AlexУ меня вышло чуть по другому:
А не трудно будет запустить opt-алгоритм на с++/дельфи? Интересно во сколько раз эти языки быстрее справятся с задачей.
Естественно, потестируем и Delphi и C++ с новым алгоритмом :)
...
Рейтинг: 0 / 0
25 сообщений из 265, страница 8 из 11
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Бенчмарки C#, C++, Java, Delphi
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]