Re[6]: Что хорошего в Net?
От: Lloyd Россия  
Дата: 18.03.09 08:47
Оценка:
Здравствуйте, neFormal, Вы писали:

F>держи, пробуй глумится..

F>http://shootout.alioth.debian.org/u32/benchmark.php?test=all&lang=csharp&lang2=gcc&box=1

Почему в C# есть создание thread-ов, а в C — нет?
Re[6]: Что хорошего в Net?
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 18.03.09 08:47
Оценка:
Здравствуйте, neFormal, Вы писали:

F>Здравствуйте, gandjustas, Вы писали:


M>>>А зачем , и так все это занют ?

G>>Такого быстрого слива я даже не ожидал.
G>>Поглумиться хотелось над говнокодом ссылку на который вы сможете предоставить.

F>держи, пробуй глумится..

F>http://shootout.alioth.debian.org/u32/benchmark.php?test=all&lang=csharp&lang2=gcc&box=1

Начинаю: октрыл наугад n-body, там векторная арифметика ручками сделана, несмотря на то что в Mono есть векторы, операции с которыми JITятся в sse.
Короче незачет.
Re[2]: Что хорошего в Net?
От: Lloyd Россия  
Дата: 18.03.09 08:52
Оценка:
Здравствуйте, Werig, Вы писали:

W>То есть вы хотите сказать, что виртуальный байт-код не компилируется впоследствии в машинный? Интересно, а как это программа может выполняться без участия процессора? Интерпретируемый код в конечном итоге всегда компилируется в машинный. Вопрос в том, сколько этапов он перед этим проходит.


Тут вы не правы. Есть языки, которые не компилируются в машинный, например Python.
Re[9]: Что хорошего в Net?
От: CreatorCray  
Дата: 18.03.09 08:52
Оценка:
Здравствуйте, Lloyd, Вы писали:

L>И постарайтесь вести себя более адекватно. Особенно в тех случаях, когда вы откровенно не правы.

Боюсь этого он не может по определению.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[8]: Что хорошего в Net?
От: CreatorCray  
Дата: 18.03.09 08:52
Оценка: -1
Здравствуйте, gandjustas, Вы писали:

G>Сорри, не удержался.

Держи себя в руках, солнышко2
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[7]: Да фик с ним
От: CreatorCray  
Дата: 18.03.09 08:52
Оценка:
Здравствуйте, Sheridan, Вы писали:

>> Kuj, а тут-то ты с чем несогласен? Или просто рука дрогнула?

S>Ты на этот AI внимания не обращай. Молодой он еще, неопытный. Да и руки все никак не дойдут ему интеллекта немного дописать, чтобы вел себя поприличнее...

А может его сразу в twit?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[7]: Что хорошего в Net?
От: neFormal Россия  
Дата: 18.03.09 08:53
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Начинаю: октрыл наугад n-body, там векторная арифметика ручками сделана, несмотря на то что в Mono есть векторы, операции с которыми JITятся в sse.


векторы есть во фреймворке или в языке?.
...coding for chaos...
Re[7]: Что хорошего в Net?
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 18.03.09 08:54
Оценка: +2 -2
Здравствуйте, gandjustas, Вы писали:

G>Здравствуйте, neFormal, Вы писали:


F>>Здравствуйте, gandjustas, Вы писали:


M>>>>А зачем , и так все это занют ?

G>>>Такого быстрого слива я даже не ожидал.
G>>>Поглумиться хотелось над говнокодом ссылку на который вы сможете предоставить.

F>>держи, пробуй глумится..

F>>http://shootout.alioth.debian.org/u32/benchmark.php?test=all&amp;lang=csharp&amp;lang2=gcc&amp;box=1

G>Начинаю: октрыл наугад n-body, там векторная арифметика ручками сделана, несмотря на то что в Mono есть векторы, операции с которыми JITятся в sse.

G>Короче незачет.

Продолжаю.
Видимо меряется время выполнения программы, вместе с затратами на JIT. Тогда для честности надо еще надо прибавить половину времени компиляции для C++.
Короче вдвойне незачет.
Re[7]: Что хорошего в Net?
От: neFormal Россия  
Дата: 18.03.09 08:55
Оценка:
Здравствуйте, Lloyd, Вы писали:

F>>http://shootout.alioth.debian.org/u32/benchmark.php?test=all&amp;lang=csharp&amp;lang2=gcc&amp;box=1

L>Почему в C# есть создание thread-ов, а в C — нет?

почему?. есть и в C.. там используется pthread..
там код показывается только для того, что выбрано в верхнем выпадающем списке..
...coding for chaos...
Re[7]: Что хорошего в Net?
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 18.03.09 08:55
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>С++ побеждает в тестах с пермножением матриц и heapsort.

G>Вполне закономерный эффект так как оба алгоритма требуют кучи обращений к массивам, которые из-за проверок границ в managed языках выполняются быстрее.
Фигню написал, в managed языках обращение к массиву выполняется медленнее.
Re[3]: Что хорошего в Net?
От: Werig  
Дата: 18.03.09 08:57
Оценка: :))
Здравствуйте, Lloyd, Вы писали:

L>Здравствуйте, Werig, Вы писали:


W>>То есть вы хотите сказать, что виртуальный байт-код не компилируется впоследствии в машинный? Интересно, а как это программа может выполняться без участия процессора? Интерпретируемый код в конечном итоге всегда компилируется в машинный. Вопрос в том, сколько этапов он перед этим проходит.


L>Тут вы не правы. Есть языки, которые не компилируются в машинный, например Python.


Это как это так? А кто ж его тогда выполняет? Неужели байт-код не транслируется в машинный?
Re[8]: Что хорошего в Net?
От: Lloyd Россия  
Дата: 18.03.09 08:58
Оценка:
Здравствуйте, neFormal, Вы писали:

F>Здравствуйте, Lloyd, Вы писали:


F>>>http://shootout.alioth.debian.org/u32/benchmark.php?test=all&amp;lang=csharp&amp;lang2=gcc&amp;box=1

L>>Почему в C# есть создание thread-ов, а в C — нет?

F>почему?. есть и в C.. там используется pthread..

F>там код показывается только для того, что выбрано в верхнем выпадающем списке..

Я наверное чего-то не понимаю, но где вот тут использование pthread?

/*The Computer Language Benchmarks Game
  http://shootout.alioth.debian.org/

  contributed by Paolo Bonzini
  further optimized by Jason Garrett-Glaser
*/

#include <stdio.h>
#include <stdlib.h>

typedef double v2df __attribute__ ((vector_size(16))); // vector of two doubles
typedef int v4si __attribute__ ((vector_size(16))); // vector of four ints

int main (int argc, char **argv)
{
    int w, h, bit_num = 0;
    char byte_acc = 0;
    int i, iter = 50;
    double x, y;
    v2df zero = { 0.0, 0.0 };
    v2df four = { 4.0, 4.0 };
    v2df nzero = -zero;

    /* Detect endianness.  */
    v4si mask = (v4si)nzero;
    int *pmask = (int *) &mask;
    if (pmask[1]) pmask++;

    w = h = atoi(argv[1]);

    char *data = malloc((w/4+2)*sizeof(char));

    double inverse_w = 2.0 / w;
    double inverse_h = 2.0 / h;

    printf("P4\n%d %d\n",w,h);

    for(y=0;y<h;++y)
    {
        for(bit_num=0,x=0;x<w;x+=2)
        {
            v2df Crv = { x*inverse_w-1.5, (x+1.0)*inverse_w-1.5 };
            v2df Civ = { y*inverse_h-1.0, y*inverse_h-1.0 };
            v2df Zrv = { 0.0, 0.0 };
            v2df Ziv = { 0.0, 0.0 };
            v2df Trv = { 0.0, 0.0 };
            v2df Tiv = { 0.0, 0.0 };
            i = 0;

            do {
                Ziv = (Zrv*Ziv) + (Zrv*Ziv) + Civ;
                Zrv = Trv - Tiv + Crv;
                Trv = Zrv * Zrv;
                Tiv = Ziv * Ziv;

                /* sign bit zeroed if 4.0 - Trv - Tiv >= 0.0 (i.e. |Z| <= 4.0).  */
                v2df delta = four - Trv - Tiv;
                mask = (v4si)delta & (v4si)nzero;
            } while (++i < iter && !(pmask[0] & pmask[2]));

            byte_acc <<= 2;
            if(!pmask[0])
                byte_acc |= 0x02;
            if(!pmask[2])
                byte_acc |= 0x01;
            bit_num+=2;

            if(!(bit_num&7)) {
                data[(bit_num>>3) - 1] = byte_acc;
                byte_acc = 0;
            }
        }

        if(bit_num&7) {
            byte_acc <<= (8-w%8);
            bit_num += 8;
            data[bit_num>>3] = byte_acc;
            byte_acc = 0;
        }
        fwrite(data, 1, (bit_num>>3), stdout);
    }
    free(data);
    return 0;
}
Re[4]: Что хорошего в Net?
От: Lloyd Россия  
Дата: 18.03.09 09:01
Оценка: +2
Здравствуйте, Werig, Вы писали:

L>>Тут вы не правы. Есть языки, которые не компилируются в машинный, например Python.


W>Это как это так? А кто ж его тогда выполняет? Неужели байт-код не транслируется в машинный?


Его выполняет интерпретатор. Берет следующую инструкцию из потока команд и в зависимости от типа инструкции делает те или иные действия.
Re[5]: Что хорошего в Net?
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 18.03.09 09:01
Оценка:
Здравствуйте, Sheridan, Вы писали:

S>gandjustas однажды (18 марта 2009 11:13) писал в rsdn.flame.comp:


>> Ты слишком упорно незамечаешь Mono.

S>Нечего там замечать. Тем более что это не дотнет, а попытка сделать подобие дотнета.
Мono и не надо быть подобием дотнета.
На mono вполне можно писать кросплатформенные десктопные приложения, в том числе с неплохой производительностью.
На .NET можно писать программы, которым требуются enterprise фичи, или крутая графика под Windows.
Mono и .NET сейчас друг друга очень хорошо дополняют.
Re[8]: Что хорошего в Net?
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 18.03.09 09:02
Оценка:
Здравствуйте, neFormal, Вы писали:

F>Здравствуйте, gandjustas, Вы писали:


G>>Начинаю: октрыл наугад n-body, там векторная арифметика ручками сделана, несмотря на то что в Mono есть векторы, операции с которыми JITятся в sse.


F>векторы есть во фреймворке или в языке?.

Они есть в Mono.
Re[9]: Что хорошего в Net?
От: neFormal Россия  
Дата: 18.03.09 09:19
Оценка:
Здравствуйте, Lloyd, Вы писали:

L>Я наверное чего-то не понимаю, но где вот тут использование pthread?


да, в другом тесте:
http://shootout.alioth.debian.org/u32/benchmark.php?test=threadring&amp;lang=gcc&amp;box=1
...coding for chaos...
Re[5]: Что хорошего в Net?
От: Werig  
Дата: 18.03.09 09:19
Оценка: -1
Здравствуйте, Lloyd, Вы писали:

L>Здравствуйте, Werig, Вы писали:


L>>>Тут вы не правы. Есть языки, которые не компилируются в машинный, например Python.


W>>Это как это так? А кто ж его тогда выполняет? Неужели байт-код не транслируется в машинный?


L>Его выполняет интерпретатор. Берет следующую инструкцию из потока команд и в зависимости от типа инструкции делает те или иные действия.


А интерпретатор по-вашему не транслирует инструкции в машинный код? )
Re[9]: Что хорошего в Net?
От: neFormal Россия  
Дата: 18.03.09 09:19
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>>>Начинаю: октрыл наугад n-body, там векторная арифметика ручками сделана, несмотря на то что в Mono есть векторы, операции с которыми JITятся в sse.

F>>векторы есть во фреймворке или в языке?.
G>Они есть в Mono.

чтд
...coding for chaos...
Re[5]: Что хорошего в Net?
От: yoriсk.kiev.ua  
Дата: 18.03.09 09:21
Оценка:
Здравствуйте, gandjustas, Вы писали:

M>>А зачем , и так все это занют ?


G>Такого быстрого слива я даже не ожидал.

G>Поглумиться хотелось над говнокодом ссылку на который вы сможете предоставить.

Человек стебётся, а вы всерьёз воспринимаете...
Re[10]: Что хорошего в Net?
От: Lloyd Россия  
Дата: 18.03.09 09:22
Оценка:
Здравствуйте, neFormal, Вы писали:

F>Здравствуйте, Lloyd, Вы писали:


L>>Я наверное чего-то не понимаю, но где вот тут использование pthread?


F>да, в другом тесте:

F>http://shootout.alioth.debian.org/u32/benchmark.php?test=threadring&amp;lang=gcc&amp;box=1

Не-не-не, я выбираю мандельброта на C и на C# и начинаю сравнивать. И тут обнаруживаются такие кардинальные различия. Как это понимать? Подтасовка?
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.