Article View: pl.comp.lang.c
Article #309383Re: typ __m256 i rejestry procesora
From: Maciek
Date: Sun, 13 Aug 2017 16:42
Date: Sun, 13 Aug 2017 16:42
37 lines
2944 bytes
2944 bytes
W dniu niedziela, 13 sierpnia 2017 18:19:10 UTC+2 użytkownik Maciek napisał:
> Hej!
> Mam pytanie. W disasemblerze widzę, że typ __m256 operuje na rejestrach ymm, w związku z czym mam pytanie - które to jest rozszerzenie procesora ? xmmX to rejestry sse natomiast nie wiem które rozszerzenie operuje na rejestrach ymm, krótki przykład:
>
> #include <iostream>
> #include <future>
>
> int main()
> {
> int a[4] = { 1, 2, 3, 4 }, b[4] = { 4, 3, 2, 1 }, result[4] = { 0, 0, 0, 0 };
> __m256 *aa, *bb, *cc;
> aa = (__m256*)a;
> bb = (__m256*)b;
> cc = (__m256*)result;
> *cc = _mm256_add_ps(*aa, *bb);
> std::cout << "RESULT: " << result[0] << ", " << result[1] << ", " << result[2] << ", " << result[3] << std::endl;
> return 0;
> }
>
> W oknie disasemblera mam:
>
> 003F24B0 mov eax,dword ptr [bb]
> 003F24B3 mov ecx,dword ptr [aa]
> 003F24B6 vmovups ymm0,ymmword ptr [ecx]
> 003F24BA vaddps ymm0,ymm0,ymmword ptr [eax]
> 003F24BE vmovups ymmword ptr [ebp-160h],ymm0
> 003F24C6 mov edx,dword ptr [cc]
> 003F24C9 vmovups ymm0,ymmword ptr [ebp-160h]
> 003F24D1 vmovups ymmword ptr [edx],ymm0
>
>
> Pozdrawiam, i dzięki za odpowiedź ewentualnie wskazówki.
>
> PS. Czy to rozszerzenie jest na różnych architekturach ??
OK. Już wiem:
https://pl.wikipedia.org/wiki/Advanced_Vector_Extensions
Technical Details
Message-ID:
<c4855707-bc49-4b4d-8949-f13d2bcb3f61@googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!feeder.erje.net!2.eu.feeder.erje.net!border1.nntp.ams1.giganews.com!border2.nntp.ams1.giganews.com!nntp.giganews.com!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!peer03.am4!peer.am4.highwinds-media.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-media.com!m34no814929iti.0!news-out.google.com!n39ni491qtf.1!nntp.google.com!s6no1159860qtc.1!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mailReferences:
<9b2cc5d1-3ecf-4e2f-8690-55c360e19233@googlegroups.com>Show Full Headers
Complete Article Headers
X-Received: by 10.99.5.216 with SMTP id 207mr14986331pgf.175.1502642542920; Sun, 13 Aug 2017 09:42:22 -0700 (PDT) X-Received: by 10.31.164.205 with SMTP id n196mr136636vke.22.1502642542861; Sun, 13 Aug 2017 09:42:22 -0700 (PDT) Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!feeder.erje.net!2.eu.feeder.erje.net!border1.nntp.ams1.giganews.com!border2.nntp.ams1.giganews.com!nntp.giganews.com!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!peer03.am4!peer.am4.highwinds-media.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-media.com!m34no814929iti.0!news-out.google.com!n39ni491qtf.1!nntp.google.com!s6no1159860qtc.1!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: pl.comp.lang.c Date: Sun, 13 Aug 2017 09:42:22 -0700 (PDT) In-Reply-To: <9b2cc5d1-3ecf-4e2f-8690-55c360e19233@googlegroups.com> Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=178.43.89.185; posting-account=SOZBVwoAAAAtP6gAgjkK3BR3YPR_ux-s NNTP-Posting-Host: 178.43.89.185 References: <9b2cc5d1-3ecf-4e2f-8690-55c360e19233@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <c4855707-bc49-4b4d-8949-f13d2bcb3f61@googlegroups.com> Subject: Re: typ __m256 i rejestry procesora From: Maciek <moblaza@gmail.com> Injection-Date: Sun, 13 Aug 2017 16:42:22 +0000 X-Received-Bytes: 2687 X-Received-Body-CRC: 3308226165 Lines: 42 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit