Для работы проектов iXBT.com нужны файлы cookie и сервисы аналитики.
Продолжая посещать сайты проектов вы соглашаетесь с нашей
Политикой в отношении файлов cookie
Итого: 2х128 в два раза медленнее, чем 1х256, 2х256 в два раза медленнее, чем 1х512. Количество тактов на исполнение этих инструкций не от ОоО зависит, хотя слова умные.
.
По моему подходу АВХ у Интела «настоящий», потому что реализован полноценно. На тех FPU что стоят в Zen2 VPDPWSSD в один такт не сделаешь.
Почти все (есть отдельные инструкции которые могут занимать вплоть до сотен циклов, например RDSEED) один либо два. Если FPU в 2 раза больше то тактов нужно в два раза меньше. Поэтому те AVX2 инструкции, которые на Zen занимали 2 такта, в Zen2 стали занимать один (а те что четыре два — исходный комментарий имел ввиду двукратную разницу в скорости исполнения между 2х256 и 1х512). Пример — VINSERTI128 (АВХ2 инструкция) в Экскаваторе занимал 2 такта, в Zen1 два такта, в Zen1+ два такта, а в Zen2 FPU увеличили с 128 до 256 и он стал выполняться за один (точно-точно) такт.
Только это никак не говорит о том, что на сложение двух чисел процессору нужно 13 тактов. Сложение запросто делается в один такт. Разница между сложением двух чисел и скажем 8 в AVX только в количестве задействованных бит FPU. 256 битному FPU плевать, будет ли за один такт на нем перемножено переменных на 32 бита или на 256. Максимум сильнее нагреется.
Считать количество исполненных ассемблерных команд и делить их на частоту. По этой методичке операция сложения будет занимать 13 команд, следовательно процессору на сложение нужно 13 тактов (не нужно). Разбирать AVX c таким подходом бессмысленно.
.
int c = a + b;
.
__static_initialization_and_destruction_0(int, int):
push rbp
mov rbp, rsp
sub rsp, 16
mov DWORD PTR [rbp-4], edi
mov DWORD PTR [rbp-8], esi
cmp DWORD PTR [rbp-4], 1
jne .L5
cmp DWORD PTR [rbp-8], 65535
jne .L5
mov edi, OFFSET FLAT:_ZStL8__ioinit
call std::ios_base::Init::Init() [complete object constructor]
mov edx, OFFSET FLAT:__dso_handle
mov esi, OFFSET FLAT:_ZStL8__ioinit
mov edi, OFFSET FLAT:_ZNSt8ios_base4InitD1Ev
call __cxa_atexit
Как именно вы собираетесь считать время ассемблерного кода?
.
AMD может сделать AVX-512 в два такта, оно делало это с AVX2 (AVX-256) первые два поколения Zen пока не удвоило FPU в Zen2 до 256.
>важна скорость исполнения кода
.
Хорошо, пишу ещё яснее черным по белому. «Фейковый» AVX-512 на двух 256 битном FPU будет выполняться два такта. «Настоящий» AVX-512 на одном 512 битном FPU будет выполняться один такт. И философия докторов здесь ни при чем.
Нет, не все. «Фейковый» AVX-512 — это поддержка инструкции (скомпилируется и запустится) с помощью двух отдельных FPU по 256 бит. инструкция логически поддерживается, но физически реализована не полностью.
.
«Настоящий» AVX-512 — это выполнение всей инструкции на одном 512-битном FPU. То есть полная логическая и физическая реализация.
.
Это все однозначно определяется безо всякой демагогии.
>Graphics card memory requirements are quite high
>512 мб vram минималки, 2 gb рекомендуемые.
У факторио невысокие требования к видеокарте. Зато высокие к процессору (в лейтгейме).
https://youtu .be/ajDUIJalxis&t=470s
.
Критерии полноценности были вполне прозрачно обозначены выше.
.
По моему подходу АВХ у Интела «настоящий», потому что реализован полноценно. На тех FPU что стоят в Zen2 VPDPWSSD в один такт не сделаешь.
.
int c = a + b;
.
__static_initialization_and_destruction_0(int, int):
push rbp
mov rbp, rsp
sub rsp, 16
mov DWORD PTR [rbp-4], edi
mov DWORD PTR [rbp-8], esi
cmp DWORD PTR [rbp-4], 1
jne .L5
cmp DWORD PTR [rbp-8], 65535
jne .L5
mov edi, OFFSET FLAT:_ZStL8__ioinit
call std::ios_base::Init::Init() [complete object constructor]
mov edx, OFFSET FLAT:__dso_handle
mov esi, OFFSET FLAT:_ZStL8__ioinit
mov edi, OFFSET FLAT:_ZNSt8ios_base4InitD1Ev
call __cxa_atexit
.
AMD может сделать AVX-512 в два такта, оно делало это с AVX2 (AVX-256) первые два поколения Zen пока не удвоило FPU в Zen2 до 256.
.
Хорошо, пишу ещё яснее черным по белому. «Фейковый» AVX-512 на двух 256 битном FPU будет выполняться два такта. «Настоящий» AVX-512 на одном 512 битном FPU будет выполняться один такт. И философия докторов здесь ни при чем.
.
«Настоящий» AVX-512 — это выполнение всей инструкции на одном 512-битном FPU. То есть полная логическая и физическая реализация.
.
Это все однозначно определяется безо всякой демагогии.
>512 мб vram минималки, 2 gb рекомендуемые.
У факторио невысокие требования к видеокарте. Зато высокие к процессору (в лейтгейме).
https://youtu .be/ajDUIJalxis&t=470s