Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Программирование Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 33 34 35 36 37 38 [39] 40 41 42   вперед  Ctrl
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
Dima T
Member

Откуда:
Сообщений: 13032
Добавил вывод в формате GIT и JSON. Загружать никуда в них не пробовал, если что напутал - пишите, поправлю.
8 июл 18, 16:46    [21554063]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
mayton
Member

Откуда: loopback
Сообщений: 38359
Dima T, OK спасибо.
8 июл 18, 17:05    [21554098]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
Siemargl
Member

Откуда: 010100
Сообщений: 6020
mayton
3-я версия это Raytracer_handofdos_r3experimental.c ?
Да, в ней используются встроенный векторный тип __m128 и операции с ним.
8 июл 18, 17:07    [21554102]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
mayton
Member

Откуда: loopback
Сообщений: 38359
Добавлю кланг к сям. Но там в одном месте опцию -ml надо добавить.
8 июл 18, 17:45    [21554147]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
mayton
Member

Откуда: loopback
Сообщений: 38359
Обновляйтесь.
8 июл 18, 17:53    [21554153]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
drsm
Member

Откуда:
Сообщений: 234
mayton
1) Добавил еще одного автора в список авторов.
2) Попутно возникли другие вопросы. Я не помню кто кодил NodeJS, PHP, Ruby, FreePascal. Нужно восстановить авторство.
нужно также сделать enrichment репортов в части авторства.

привет, nodejs, go, php - я
8 июл 18, 23:34    [21554651]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
mayton
Member

Откуда: loopback
Сообщений: 38359
Привет бро! Как тебя записать? DRSM?
8 июл 18, 23:46    [21554675]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
Siemargl
Member

Откуда: 010100
Сообщений: 6020
Короче, я не знаю, как это объяснить, кроме багнутости gcc
zws@zws-virtual-machine:~/raytrace/c_workingcopy$ ./run.sh
#!/bin/bash -v

time ./Raytracer_handofdos2.exe 1.ppm

real 0m10,351s
user 0m10,325s
sys 0m0,014s
time ./Raytracer_handofdosavx2.exe 2.ppm

real 0m13,434s
user 0m13,406s
sys 0m0,012s
time ./Raytracer_handofdosAVX3.exe 3.ppm

real 0m38,079s
user 0m38,028s
sys 0m0,017s

time ./Raytracer_handofdos_r2.clang.exe 4.ppm

real 0m12,949s
user 0m12,921s
sys 0m0,012s
time ./Raytracer_handofdos_r3experimental.clang.exe 5.ppm

real 0m9,840s
user 0m9,821s
sys 0m0,008s


zws@zws-virtual-machine:~/raytrace/c_workingcopy$ uname -a
Linux zws-virtual-machine 4.15.0-23-generic #25-Ubuntu SMP Wed May 23 18:02:16 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux


Кстати, новый лучший результат - Clang+SSE4. Сейчас запулю.
9 июл 18, 13:32    [21556033]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
mayton
Member

Откуда: loopback
Сообщений: 38359
Круть.
9 июл 18, 13:37    [21556059]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
Dima T
Member

Откуда:
Сообщений: 13032
+ ИМХО компилятору лучше не мешать излишней заточкой кода
С
time ./Raytracer_handofdos2.exe 1.ppm

real 0m7.305s

user 0m7.295s
sys 0m0.008s
time ./Raytracer_handofdosavx2.exe 2.ppm

real 0m7.285s
user 0m7.279s
sys 0m0.004s
time ./Raytracer_handofdosAVX3.exe 3.ppm

real 0m28.444s
user 0m28.427s
sys 0m0.008s

time ./Raytracer_handofdos_r2.clang.exe 4.ppm

real 0m7.871s

user 0m7.845s
sys 0m0.004s
time ./Raytracer_handofdos_r3experimental.clang.exe 5.ppm

real 0m9.157s
user 0m9.150s
sys 0m0.004s

CPP
time ./card-raytracer-cpp.exe 1.ppm

real 0m7.352s
user 0m7.332s
sys 0m0.016s

time ./card-raytracer-cpp.clang.exe 1.ppm

real 0m6.725s

user 0m6.719s
sys 0m0.004s
time ./card-raytracer-rwolf-cpp.clang 1.ppm

Компилировал CPP с ключами из С
OPTIONS=" -O3 -march=native -m64 -msse4.2 -ffast-math "

CLANG_OPTIONS=" -O3 -march=native -m64 -msse4.2 -ffast-math "

g++ $OPTIONS card-raytracer.cpp       -o card-raytracer-cpp.exe

clang++ $CLANG_OPTIONS card-raytracer.cpp       -o card-raytracer-cpp.clang.exe



11 июл 18, 13:59    [21562437]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
Siemargl
Member

Откуда: 010100
Сообщений: 6020
Dima T,

Еще последнего пуллреквеста нет в принятых. Там лучше заточка.
11 июл 18, 16:10    [21563141]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
mayton
Member

Откуда: loopback
Сообщений: 38359
Да вижу. Вечером замержу.
11 июл 18, 18:59    [21563791]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
mayton
Member

Откуда: loopback
Сообщений: 38359
Зашло. Обновляйтесь.
11 июл 18, 22:07    [21564136]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
mayton
Member

Откуда: loopback
Сообщений: 38359
Тут с именами бинарников - путаница. По крайней мере в windows и linux они отличаются.
Возможно я где-то напутал. Может где-то рассинхрон пошел. Я не тестил это под виндой вобщем.

make.sh
gcc Raytracer_handofdos_r2.c -O3 -march=native -m64 -msse4.2 -ffast-math                  -o Raytracer_handofdos2.exe
gcc Raytracer_handofdos_r2.c -O3 -march=native -m64 -msse4.2 -ffast-math -S               -o Raytracer_handofdos2.asm
gcc Raytracer_handofdos_r2.c -O3 -march=native -m64 -msse4.2 -ffast-math -S -fverbose-asm -o Raytracer_handofdos2-fverbose.asm

gcc Raytracer_handofdos_r2.c -O3 -march=native -m64 -msse4.2 -ffast-math -DAVX_VERSION                  -o Raytracer_handofdosavx2.exe
gcc Raytracer_handofdos_r2.c -O3 -march=native -m64 -msse4.2 -ffast-math -DAVX_VERSION -S               -o Raytracer_handofdosavx2.asm
gcc Raytracer_handofdos_r2.c -O3 -march=native -m64 -msse4.2 -ffast-math -DAVX_VERSION -S -fverbose-asm -o Raytracer_handofdosavx2-fverbose.asm

#::gcc Raytracer_handofdos.c -O0 -march=native -m64 -msse4.2 -ffast-math -DAVX_VERSION -o Raytracer_handofdosAVX.exe   -pg
gcc Raytracer_handofdos_r3experimental.c -O3 -march=native -m64 -msse4.2 -ffast-math -DAVX_VERSION                  -o Raytracer_handofdosAVX3.exe
gcc Raytracer_handofdos_r3experimental.c -O3 -march=native -m64 -msse4.2 -ffast-math -DAVX_VERSION -S               -o Raytracer_handofdosAVX3.asm
gcc Raytracer_handofdos_r3experimental.c -O3 -march=native -m64 -msse4.2 -ffast-math -DAVX_VERSION -S -fverbose-asm -o Raytracer_handofdosAVX3-fverbose.asm


clang Raytracer_handofdos_r2.c \
 -O3 \
 -march=native \
 -m64 \
 -msse4.2 \
 -ffast-math \
 -lm \
 -o Raytracer_handofdos_r2.clang.exe

clang Raytracer_handofdos_r2.c \
 -O3 \
 -march=native \
 -m64 \
 -msse4.2 \
 -ffast-math \
 -lm \
 -DAVX_VERSION \
 -o Raytracer_handofdos_r2.clang.exe

clang Raytracer_handofdos_r3experimental.c \
 -O3 \
 -march=native \
 -m64 \
 -msse4.2 \
 -ffast-math \
 -lm \
 -DAVX_VERSION \
 -o Raytracer_handofdos_r3experimental.clang.exe


make.cmd
gcc Raytracer_handofdos_r2.c -O3 -march=native -m64 -msse4.2 -ffast-math -o Raytracer_handofdos2.exe
gcc Raytracer_handofdos_r2.c -O3 -march=native -m64 -msse4.2 -ffast-math -DAVX_VERSION -o Raytracer_handofdosavx2.exe
::gcc Raytracer_handofdos.c -O0 -march=native -m64 -msse4.2 -ffast-math -DAVX_VERSION -o Raytracer_handofdosAVX.exe   -pg
gcc Raytracer_handofdos_r3experimental.c -O3 -march=native -m64 -msse4.2 -ffast-math -DAVX_VERSION -o Raytracer_handofdosAVX3.exe   
 gcc Raytracer_handofdos_r3experimental.c -O3 -march=native -m64 -msse4.2 -ffast-math -DAVX_VERSION -fopenmp -o Raytracer_handofdosAVX3mp.exe   
11 июл 18, 23:03    [21564300]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
Siemargl
Member

Откуда: 010100
Сообщений: 6020
mayton,

вторая версия в clang должна быть Raytracer_handofdos_r2avx.clang.exe

последняя под виндой - не особо удачная параллелизация с помощью OpenMP (нет выгоды в такой реализации). Можно не переносить в тесты
12 июл 18, 08:15    [21564737]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
Dima T
Member

Откуда:
Сообщений: 13032
Siemargl
Dima T,

Еще последнего пуллреквеста нет в принятых. Там лучше заточка.

Затестил, первое место.
time ./Raytracer_handofdos_r3experimental.clang.exe 5.ppm

real 0m6.384s
12 июл 18, 12:26    [21565674]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
drsm
Member

Откуда:
Сообщений: 234
mayton
Привет бро! Как тебя записать? DRSM?
drsm
12 июл 18, 12:43    [21565752]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
Dima T
Member

Откуда:
Сообщений: 13032
Затестил в виндовс виртуалке, хост тот же что и в линукс-тесте 21541279

Win7x64 Intel i7 6700K 4 ГГц
LangTime sTime %MSE
cpp0:10.760100.0%
cpp avx0:9.69590.1%0
java 10.0.10:11.029102.5%4.4
c# .net core0:11.994111.5%5.7
c# x640:13.994130.1%5.7
c# x860:16.260151.1%5.7

Компиляторы:
cpp Microsoft (R) C/C++ Optimizing Compiler Version 19.00.24215.1 for x64
c# Microsoft (R) Visual C# Compiler version 4.7.2558.0 for C# 5
c# .net core 2.1 Microsoft (R) Build Engine версии 15.7.179.6572 для .NET Core
java 10.0.1 отсюда http://jdk.java.net/10/
12 июл 18, 14:49    [21566140]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
mayton
Member

Откуда: loopback
Сообщений: 38359
Siemargl
mayton,

вторая версия в clang должна быть Raytracer_handofdos_r2avx.clang.exe

последняя под виндой - не особо удачная параллелизация с помощью OpenMP (нет выгоды в такой реализации). Можно не переносить в тесты

Пофикси plz.
12 июл 18, 16:04    [21566406]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
mayton
Member

Откуда: loopback
Сообщений: 38359
drsm
mayton
Привет бро! Как тебя записать? DRSM?
drsm

OK
12 июл 18, 23:35    [21567456]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
mayton
Member

Откуда: loopback
Сообщений: 38359
Dima T
Затестил в виндовс виртуалке, хост тот же что и в линукс-тесте 21541279

Win7x64 Intel i7 6700K 4 ГГц
LangTime sTime %MSE
cpp0:10.760100.0%
cpp avx0:9.69590.1%0
java 10.0.10:11.029102.5%4.4
c# .net core0:11.994111.5%5.7
c# x640:13.994130.1%5.7
c# x860:16.260151.1%5.7

Компиляторы:
cpp Microsoft (R) C/C++ Optimizing Compiler Version 19.00.24215.1 for x64
c# Microsoft (R) Visual C# Compiler version 4.7.2558.0 for C# 5
c# .net core 2.1 Microsoft (R) Build Engine версии 15.7.179.6572 для .NET Core
java 10.0.1 отсюда http://jdk.java.net/10/

Кажется что родной дотнет быстрее чем Моно.
12 июл 18, 23:38    [21567460]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
mayton
Member

Откуда: loopback
Сообщений: 38359
Замержил.
c-sharp/card-raytracer.csproj |  11 ++++++++
 c-sharp/make.cmd              |   4 ++-
 c-sharp/run.cmd               |   2 ++
 cpp/make_msvc.cmd             |  47 ++++++++++++++++++++++++--------
 run-benchmark.cmd             | 130 ++++++++++++++-------------------------------------------------------------------------
 tools/make_msvc.cmd           |  44 ++++++++++++++++++++++++------
12 июл 18, 23:43    [21567462]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
Dima T
Member

Откуда:
Сообщений: 13032
mayton
Кажется что родной дотнет быстрее чем Моно.

Какое моно? Это же виндовс, оба дотнета родные, только один старый, другой новый (.net core).
MS с нуля пилит .net core, причем с прицелом чтобы кросплатформно было. Судя по замерам - получается, скорость .net core примерно одинакова в линуксе и виндовсе.
А java удивила, почти догнала С++, в прошлый замер намного тормознее была 19539233
13 июл 18, 08:19    [21567742]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
mayton
Member

Откуда: loopback
Сообщений: 38359
Dima T
mayton
Кажется что родной дотнет быстрее чем Моно.

Какое моно? Это же виндовс, оба дотнета родные, только один старый, другой новый (.net core).
MS с нуля пилит .net core, причем с прицелом чтобы кросплатформно было. Судя по замерам - получается, скорость .net core примерно одинакова в линуксе и виндовсе.
А java удивила, почти догнала С++, в прошлый замер намного тормознее была 19539233

34 секунды. Mono C# compiller. В твоём же отчете с Ubuntu 14.

Не?
13 июл 18, 08:36    [21567756]     Ответить | Цитировать Сообщить модератору
 Re: Тяпничный бенчмарк CPU (part-1)  [new]
Dima T
Member

Откуда:
Сообщений: 13032
mayton
34 секунды. Mono C# compiller. В твоём же отчете с Ubuntu 14.
Не?

Ты меня запутал. Процитировал виндовс замер, а написал про линуксовый :)

Моно да, тормознутый. Его сначала пилили реверс-инженерингом виндового .net, пару лет назад MS подключился к разработке моно, исходники .net открыл, вроде как пытаются их адаптировать в моно, но похоже не особо напрягаются. У .net core разработка намного активнее идет.
13 июл 18, 08:52    [21567783]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 33 34 35 36 37 38 [39] 40 41 42   вперед  Ctrl
Все форумы / Программирование Ответить