메모리에서 8개의 문자를 압축된 단일 정밀도 부동 소수점으로 __m256 변수에 로드
가우시안 블러에 대한 알고리즘을 최적화하려는 노력의 일환으로 부동 버퍼의 사용을 __m256 내장 변수로 대체하려고 합니다. 이 질문은 이 작업에 대한 최적의 지침을 결정하는 것을 목표로 합니다.
AVX2 아키텍처에 대한 지침:
; rsi = new_image VPMOVZXBD ymm0, [rsi] ; or SX to sign-extend (Byte to DWord) VCVTDQ2PS ymm0, ymm0 ; convert to packed foat
추가 전략:
AVX1 아키텍처에 대한 지침:
다음을 수행합니다. 단계:
VPMOVZXBD xmm0, [rsi] VPMOVZXBD xmm1, [rsi 4] VINSERTF128 ymm0, ymm0, xmm1, 1 ; put the 2nd load of data into the high128 of ymm0 VCVTDQ2PS ymm0, ymm0 ; convert to packed float
내장 고려 사항:
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3