[Moscow.pm] Сравнение языков
Naim Sh
shafiev на gmail.com
Вт Фев 10 04:37:36 PST 2015
Коллеги , а что вы не юзаете тот же интеловский компилятор, он то именно
на такой синтетики должен давать максимальные результаты.
On 02/10/2015 04:33 PM, Andrey Kovbovich wrote:
>
> Потестил на более менее современной тачке... вариант Монса у меня
> сегфолтится почему-то, прогнал слегка модифицированный из пред комментов
>
> #include <stdio.h>
> #include <time.h>
> #include <stdlib.h>
> #include <stdint.h>
> #include <inttypes.h>
>
> int main()
> {
> uint32_t *arr;
> arr = (uint32_t *) malloc(10000000 * sizeof(uint32_t));
>
> int i,z;
> for( i=0; i<10000000; i++) {
> arr[i] = i;
> }
>
> clock_t start = clock();
> uint64_t sum;
>
> for(z = 0; z < 100; z++ ){
> sum = 0;
> for( i=0; i<10000000; i++) {
> sum+=arr[i];
> }
> }
>
> clock_t end = clock();
> printf("Time:(%0.8f)ms . Sum: %" PRIu64,
> ((double)end-start)*1000/CLOCKS_PER_SEC/z, sum);
>
> return 0;
> }
>
> $ cat /proc/cpuinfo
> model name: Intel(R) Core(TM) i7 CPU X 980 @ 3.33GHz
>
> $ gcc --std=c99 -O3 -march=native 3.c -o 3.native
> $ ./3.native
> Time:(5.20000000)ms . Sum: 49999995000000$
>
>
> еще раз на скриптовом J
>
> $ ./jconsole.sh
> x =: i.10000000
> 6!:2 's =: +/x'
> 0.009537
> s
> 49999995000000
>
> 9+ ms
>
> 10 февраля 2015 г., 14:48 пользователь Анатолий Гришаев
> <0body0 на rambler.ru <mailto:0body0 на rambler.ru>> написал:
>
> 10.02.2015 14:36, Михаил Монашёв пишет:
>
> Здравствуйте, Анатолий.
>
> Кстати лучше считать с нуля тогда процесор может
> использовать
> prefetch
>
> Ещё в С можно как-то задать выравнивание массива. Не знаю,
> правда,
> поможет ли это, но мне кажется, что всё упирается в скорость
> чтения из
> памяти. Ещё возможно попытаться задать выравнивание для тела
> цикла.
>
> В POSIX написано, что результат вызова malloc всегда выровнен, а
> всякие массивы объявленные статично компилятор выравнивает.
> Можно поэтому не волноваться :)
> Конечно, если ты сам адрес массива не посчитаешь/укажешь типа
> 0x...7f.
>
>
> --
> Moscow.pm mailing list
> moscow-pm на pm.org <mailto:moscow-pm на pm.org> | http://moscow.pm.org
>
>
>
>
--
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20150210/fa2da824/attachment-0001.html>
Подробная информация о списке рассылки Moscow-pm