разница между векторным процессором и SIMD
Я не знаю вашего определения векторного процессора, но wikipedia говорит, что SIMD - один из них.
Является ли это случаем, что для машин SIMD нам нужно иметь столько блоков обработки, сколько число элементов, на которых работает каждая инструкция?
Некоторые ЦП разделяют регистр SIMD на части и обрабатываютих самостоятельно.Intel Pentium III разделяет 128-битные операции SSE на 64-битные фрагменты, AMD Zen делает то же самое с 256-битными инструкциями AVX, разбивает их на 128-битные фрагменты.
необходимо использовать секвенсор длявыполнить инструкцию за несколько циклов?
То, что они разделены, не означает, что они выполняются последовательно.Все современные процессоры, включая ARM, имеют несколько исполнительных блоков (EU) на ядро.Микрооперации могут выполняться параллельно в разных ЕС, но эти ЕС не равны.Поскольку я упоминал AMD Zen, вот ссылка .Ядро может начать выполнять до 10 различных микроопераций за цикл: 4 целых числа (все могут добавлять или побитовые, 2 из них могут умножаться / делиться, 2 из них могут ветвиться), 2 целочисленных загрузки / сохранения, 4 128-битныхоперации с плавающей запятой (две могут добавлять, две другие могут умножаться, две могут шифровать AES).Он может завершить до 16 инструкций / цикл, 8 целых чисел, 8 операций с плавающей запятой.Для разных микроопераций требуется разное количество циклов.