LINUX.ORG.RU
ФорумTalks

[Диплом][Осторожно, .Net][Эксперимент] Меряемся

 ,


0

2

Для диплома возникла необходимость собрать статистику производительности процессоров на конкретной задаче (это первый этап, во всяком случае). Суть эксперимента проста: скачать файл ftp://arbuzoff.org/Shared2/test.tar.bz2 и запустить. Это простейшее прототипное приложение на .Net. Исходник прилагается, как подтверждение чистоты помыслов. Необходимо запостить время работы приложения и характеристику процессора.

Пример:

AMD Athlon 64 2000Mhz (1 ядро) - 00:00:15.2109375

P.S. Не спорю, метод замеров попахивает быдлизмом.

P.P.S. На .Net, потому что быстро и прототип.

P.P.P.S. А Linux тут при том, что приложение изначально пишется под него на C++))

P.P.P.P.S. Хостюсь на частном сервере моего знакомого, посему может местами не работать.

P.P.P.P.P.S. Если тестируете в Mono, то сделайте соответствующую пометку.

Заранее благодарю.

★★★★

Последнее исправление: DarkAmateur (всего исправлений: 1)

i5-430M - 1 ядро - 00:00:11.1726391

devl547 ★★★★★
()
Ответ на: комментарий от MahMahoritos

Результаты экспериментов подвегнутся математической обработке, посему выписывать виражи на C++ сейчас нет смысла.

DarkAmateur ★★★★
() автор топика

E6400, одно ядро - 14.6сек

dk-
()
sectoid@dagon:~/Downloads/lor-test$ mono Test.exe 
Completed: 00:00:00.9663390.
See result in file 'result.txt'.
Thank you!


sectoid@dagon:~/Downloads/lor-test$ cat /proc/cpuinfo  | grep 'model name' | sort | uniq
model name	: Intel(R) Core(TM) i7 CPU         920  @ 2.67GHz
sectoid@dagon:~/Downloads/lor-test$ mono --version
Mono JIT compiler version 2.10.1 (master/0e21dbb)
Copyright (C) 2002-2011 Novell, Inc and Contributors. www.mono-project.com
	TLS:           __thread
	SIGSEGV:       altstack
	Notifications: epoll
	Architecture:  x86
	Disabled:      none
	Misc:          softdebug 
	LLVM:          supported, not enabled.
	GC:            Included Boehm (with typed GC and Parallel Mark)
Sectoid ★★★★★
()

не PSSSS, а PPPPPS надо. Ибо post post post ... scriptum.

true_admin ★★★★★
()

AMD Athlon 64 X2 5200+ 2600 МГц

Debian, x86_64, ядро 2.6.38

Mono JIT compiler version 2.6.7 (Debian 2.6.7-5)

результат 00:00:10.6942110

anonymous_incognito ★★★★★
()
Ответ на: комментарий от DarkAmateur

> Ни в кой мере. Просто на .Net такие приложения быстрее сварганить.

Судя по исходнику на C++ ни разу не медленее. А на Perl ещё быстрее чем на C#. И заодно тестеров было бы больше, за счёт того, что Mono есть не у всех, а перл чуть менее чем на каждой линуксовой машине стоит.

P.S. Моно в данный момент не установлено, так что не протестил.

kim-roader ★★
()

amd64x2/6000/family15/model67/k8/3000Mhz/15mp/bus200Mhz/HTL 1000Mhz 00:00:10.6093750

visual_pipe
()
Ответ на: комментарий от kim-roader

все равно тут большинство вендузятники :)
за пруфами - в счетчики сайта от мыло.ру

dk-
()

Intel(R) Core(TM)2 Duo CPU P8700 @ 2.53GHz - 0:00:09.1935330

dizza ★★★★★
()
$ mono SpeedTester.exe 
Completed: 00:00:13.0621410.
See result in file 'result.txt'.
Thank you!

$ cat /proc/cpuinfo | grep "model name"
model name	: AMD Athlon(tm) 64 X2 Dual Core Processor 4200+
model name	: AMD Athlon(tm) 64 X2 Dual Core Processor 4200+
Deleted
()

результат 00:00:16.6872400

процессор AMD Athlon(tm) XP 2600+

ОС Ubuntu 2.6.35-28-generic

Mono 2.6.7

nekto_m
()
Ответ на: комментарий от Ja-Ja-Hey-Ho
$ mono --version   
Mono JIT compiler version 2.8.2 (tarball Wed Feb 23 09:31:21 UTC 2011)
Copyright (C) 2002-2010 Novell, Inc and Contributors. www.mono-project.com
        TLS:           __thread
        SIGSEGV:       altstack
        Notifications: epoll
        Architecture:  amd64
        Disabled:      none
        Misc:          debugger softdebug 
        LLVM:          supported, not enabled.
        GC:            Included Boehm (with typed GC and Parallel Mark)
Ja-Ja-Hey-Ho ★★★★★
()
Ответ на: комментарий от Ja-Ja-Hey-Ho

Таки самому интересно. Зафиксирован второй случай. Бинарник закомпилен под .Net 2.0 в VS 2010.

Интуитивное предположение: автоматическое распараллеливание.

DarkAmateur ★★★★
() автор топика
Ответ на: комментарий от DarkAmateur

Вряд ли, тут что-то другое.

Потому что я откомпилировал Program.cs с помощью gmcs и получил 00:00:01.1516040 для своего 5200+

anonymous_incognito ★★★★★
()
[alexv@myhost Downloads]$ mono ./SpeedTester.exe 
Completed: 00:00:08.9014340.
See result in file 'result.txt'.
Thank you!
[alexv@myhost Downloads]$ cat /proc/cpuinfo  | grep 'model name' | sort | uniq
model name      : AMD Phenom(tm) II X4 955 Processor
Loki13 ★★★★★
()
Ответ на: комментарий от Loki13
[alexv@myhost Downloads]$ gmcs ./Program.cs 
[alexv@myhost Downloads]$ mono ./Program.exe 
Completed: 00:00:00.8935190.
See result in file 'result.txt'.
Thank you!
Loki13 ★★★★★
()

AMD Turion X2 3.6 GHz 00:00:16.5000000 . Mandriva, Mono.
AMD Athlon X2 4200+ 00:00:13.3125000 . Mandriva, Mono.
AMD Athlon X2 3800+ 00:00:15.4062500 . Windows, бинарь из архива.
AMD Athlon X2 3800+ 00:00:01.8437500 . Windows, рекомпилено.

Да, я люблю продукцию AMD.

Sadler ★★★
()

> на .Net

При таком подходе хочется не только не помогать, но даже немного подгадить.

Smacker ★★★★★
()

Completed: 00:00:07.7763280.
See result in file 'result.txt'.
Thank you!

Intel Core i5 2500.

Mono 2.6.7, Fedora 14 i686, 2.6.39 vanilla.

juk4windows
()
Ответ на: комментарий от DarkAmateur

> Это что за зверьё?

Эт ноут мой =) Не помню, что за проц конкретно. Знаю, что турион и 3.6 GHz. Уже посмотреть не могу - дал его погонять до завтра.

Sadler ★★★
()

AMD Athlon II X2 2800 MHz - 00:00:11.1186360

hibou ★★★★★
()

> P.S. Не спорю, метод замеров попахивает быдлизмом.

Равно как и формулировка задачи, в которой всё перевёрнуто с ног не голову:

производительности процессоров на конкретной задаче

fang
()

>P.P.S. На .Net, потому что быстро и прототип.

Я так и знал, что Python сделан для окончательных вариантов приложений, а также что это энтерпрайз!

Quasar ★★★★★
()
> mono SpeedTester.exe 
Completed: 00:00:10.2464810.
See result in file 'result.txt'.
Thank you!

AMD Athlon II X4 620

HighwayStar ★★★★★
()
$ mono SpeedTester.exe 
Completed: 00:00:08.9822440.
See result in file 'result.txt'.
Thank you!

$ gmcs Program.cs 
$ mono Program.exe 
Completed: 00:00:01.0693010.
See result in file 'result.txt'.
Thank you!

$ grep name /proc/cpuinfo |uniq
model name	: AMD Athlon(tm) II X2 250 Processor

Current Speed: 3183 MHz

x3al ★★★★★
()
Ответ на: комментарий от sdio

ИМХО - там такой цикл, что на этапе компиляции его вряд ли получится оптимизировать

Ja-Ja-Hey-Ho ★★★★★
()

Скомпилированный gmcs бинарник под виндой в виртуалбоксе тоже работает секунду.

x3al ★★★★★
()

Мне кажется или там синус всегда положительный? Зачем тогда брать его модуль?

Mono нету, так что тестировать не на чем.

Ускорение на порядок после рекомпиляции наводит на мысли о какой-то хитрой оптимизации математических функций, либо в архиве не нативный exe, а обычный байт-код в обертке. Такое вообще возможно?

delete83 ★★
()
Ответ на: комментарий от DarkAmateur

Должен быть, но можно ведь и в нативный код откомпилить. Может gmcs по умолчанию так и делает?

delete83 ★★
()

epic fail: r.Next(0, 1) будет всегда возвращать 0

r.NextDouble(): 00:00:01.8453230
r.Next(0, 1): 00:00:01.0195510
т.е. получаем разницу в скорости выполнении почти в 2 раза

Ja-Ja-Hey-Ho ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.