Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Assembly 如何使用“加载zmm1”;1“;(AVX-512)_Assembly_Avx512 - Fatal编程技术网

Assembly 如何使用“加载zmm1”;1“;(AVX-512)

Assembly 如何使用“加载zmm1”;1“;(AVX-512),assembly,avx512,Assembly,Avx512,我需要用“1”填充zmm1,以便能够在循环中快速填充内存中的大数据字段。如何将zmm1设置为“1”,如英特尔汇编中的mov rax、0FFFFFFFFFFFFFFH?我对{k1}{z}参数没有任何经验 请参阅下面的代码 PCMPEQD zmm1, zmm1 我得到了一个错误代码“无效指令操作数”clang++和g++使用vpternlogd zmm0,zmm0,zmm0,255。我发现这是使用和是的,这通常是ZMM regs的最佳选择。但是,它确实对旧值有错误的依赖关系,因此请谨慎使用。在循环

我需要用“1”填充zmm1,以便能够在循环中快速填充内存中的大数据字段。如何将zmm1设置为“1”,如英特尔汇编中的mov rax、0FFFFFFFFFFFFFFH?我对{k1}{z}参数没有任何经验

请参阅下面的代码

PCMPEQD zmm1, zmm1

我得到了一个错误代码“无效指令操作数”

clang++和g++使用
vpternlogd zmm0,zmm0,zmm0,255
。我发现这是使用和

是的,这通常是ZMM regs的最佳选择。但是,它确实对旧值有错误的依赖关系,因此请谨慎使用。在循环中,您可能希望
vmovdqa64
复制现有寄存器,而不是重新生成一个all-one向量,因为Skylake系列CPU上不需要ALU执行单元。不幸的是,我注意到我的CPU 7500u只能处理256位:>支持AVX的AVX2支持AVX512CD不支持AVX512ER不支持AVX512F不支持AVX512PF不支持如何修改AVX2即ymm0寄存器的vpternlogd zmm0、zmm0、255?