Comments 1
Запрет обходится второй переменной: DOTNET_PreferredVectorBitWidth=512. С парой переменных W-2255 наконец показывает Count = 16, и Sum() пересаживается на zmm
если что, Vector<T> не использует avx512 исключительно в цельях совместимости со старым кодом, который мог бы полагать что под капотом либо 16 либо 32 байтовый вектор. Со временем это ограничение уберут.
PS: в LINQ особо не пытаются оптимизировать симдами всё что можно, скорее по принципу “если это немного кода и работает на всех платформах - берем”. потому что для every nanosecond matters надо брать TensorPrimitives.
Sign up to leave a comment.
Бенчмаркая Sum: ускорил циклом — замедлил в ×4,7