Re[3]: 2D-Linq и оптимизация цифровых фильтров - 4
От: Mystic Artifact  
Дата: 03.08.20 16:15
Оценка:
Здравствуйте, Sinclair, Вы писали:

S>Интересно опять же, что если брать чистое время исполнения, то классический unsafe код исполняется у тебя сильно шустрее, чем у меня.

S>Относительные времена Vector/Scalar примерно совпадают; что означает, что используется тот же instruction set.
S>Пока что ещё есть куда крутить оптимизацию — например, фаза предынтегрирования пока что не векторизуется из-за накладок при доступе к r[0, -1].
S>Ещё там не очень оптимально сделан тернарный оператор; но я пока что даже в disassembly ему не смотрел — там нужно прямо очень приседать; обычные способы для динамического кода не работают.

Да я тоже обратил внимание на разницу... но не знаю в чём дело. i7-6600U просто поскромнее, думаю вот и вся разница... Стало интересно, и вот взял ещё ноут с DDR4 памятью и соответственно другим процессором (на i7-4770 была DDR3 память, но в который раз убеждаюсь — это вообще без разницы ):

BenchmarkDotNet=v0.12.1, OS=Windows 10.0.19041.329 (2004/?/20H1)
Intel Core i5-7300HQ CPU 2.50GHz (Kaby Lake), 1 CPU, 4 logical and 4 physical cores
.NET Core SDK=3.1.301
  [Host]     : .NET Core 3.1.5 (CoreCLR 4.700.20.26901, CoreFX 4.700.20.27001), X64 RyuJIT
  DefaultJob : .NET Core 3.1.5 (CoreCLR 4.700.20.26901, CoreFX 4.700.20.27001), X64 RyuJIT


|                  Method | WHalf |   FileName |       Mean |    Error |   StdDev | Ratio | RatioSD |
|------------------------ |------ |----------- |-----------:|---------:|---------:|------:|--------:|
|             SafeSauvola |     5 | p00743.bmp | 1,369.5 ms | 26.42 ms | 25.94 ms |  1.89 |    0.03 |
|     UnsafeSauvolaScalar |     5 | p00743.bmp |   727.7 ms | 13.48 ms | 11.26 ms |  1.00 |    0.00 |
|       LinqSauvolaVector |     5 | p00743.bmp | 1,283.9 ms |  8.68 ms |  8.12 ms |  1.77 |    0.02 |
|       LinqSauvolaScalar |     5 | p00743.bmp | 1,284.4 ms |  8.86 ms |  7.86 ms |  1.76 |    0.03 |
| CachedLinqSauvolaVector |     5 | p00743.bmp |   681.5 ms |  9.41 ms |  7.86 ms |  0.94 |    0.02 |
| CachedLinqSauvolaScalar |     5 | p00743.bmp |   789.0 ms |  8.12 ms |  6.78 ms |  1.08 |    0.02 |


По тесту видно, что кто-то его давненько не обновлял, но абсолютные цифры похожи на десктоп.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.