Сообщение Re[7]: Производительность .Net на вычислительных задачах от 31.10.2020 5:01
Изменено 31.10.2020 6:34 кубик
Re[7]: Производительность .Net на вычислительных задачах
S>Для упрощения кода. Просто в дотнете нет никакой арифметики ни на byte, ни на word — есть только на int и на long.
S>Поэтому когда мы складываем byte + byte, получается сразу int, а к word придётся кастить руками.
Но у нас воспрос не простоты, а производительности... Надеюсь ты в докладе осветил этот недостаток
Переписаная на SSE с AVX c4_filter с WORD в 3-4 раза быстрее чем C++ (старенький VS 2008, проц Xeon старенький)
А с int в 2 раза быстрее чем C++ (старенький VS 2008, проц Xeon старенький)
Результаты сверял.
в c4_filter я заменил только главный цикл. Думаю этого достаточно.
Так как Xeon у меня старый, инетересно, как моя функа (она тоже наивная, переписана с твоей) посчитает на новых и посоревнуется с современным оптимизатором?
S>Поэтому когда мы складываем byte + byte, получается сразу int, а к word придётся кастить руками.
Но у нас воспрос не простоты, а производительности... Надеюсь ты в докладе осветил этот недостаток
Переписаная на SSE с AVX c4_filter с WORD в 3-4 раза быстрее чем C++ (старенький VS 2008, проц Xeon старенький)
А с int в 2 раза быстрее чем C++ (старенький VS 2008, проц Xeon старенький)
Результаты сверял.
в c4_filter я заменил только главный цикл. Думаю этого достаточно.
Так как Xeon у меня старый, инетересно, как моя функа (она тоже наивная, переписана с твоей) посчитает на новых и посоревнуется с современным оптимизатором?
Re[7]: Производительность .Net на вычислительных задачах
S>Для упрощения кода. Просто в дотнете нет никакой арифметики ни на byte, ни на word — есть только на int и на long.
S>Поэтому когда мы складываем byte + byte, получается сразу int, а к word придётся кастить руками.
Но у нас воспрос не простоты, а производительности... Надеюсь ты в докладе осветил этот недостаток
Переписаная на SSE с AVX c4_filter с WORD в 3-4 раза быстрее чем C++ (старенький VS 2008, проц Xeon старенький)
А с int в 2 раза быстрее чем C++
Результаты сверял.
в c4_filter я заменил только главный цикл. Думаю этого достаточно.
Так как Xeon у меня старый, инетересно, как моя функа (она тоже наивная, переписана с твоей) посчитает на новых и посоревнуется с современным оптимизатором?
Update: нашел gcc современный с -march=native и -mtune=native и -O2 так же как и VS 2008.
Он ничего не векторизировал в асме. Как я и ожидал. Если б так было б, то можно на пенсию было собираться.
S>Поэтому когда мы складываем byte + byte, получается сразу int, а к word придётся кастить руками.
Но у нас воспрос не простоты, а производительности... Надеюсь ты в докладе осветил этот недостаток
Переписаная на SSE с AVX c4_filter с WORD в 3-4 раза быстрее чем C++ (старенький VS 2008, проц Xeon старенький)
А с int в 2 раза быстрее чем C++
Результаты сверял.
в c4_filter я заменил только главный цикл. Думаю этого достаточно.
Так как Xeon у меня старый, инетересно, как моя функа (она тоже наивная, переписана с твоей) посчитает на новых и посоревнуется с современным оптимизатором?
Update: нашел gcc современный с -march=native и -mtune=native и -O2 так же как и VS 2008.
Он ничего не векторизировал в асме. Как я и ожидал. Если б так было б, то можно на пенсию было собираться.