- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I've used the Intel 11.1 compiler to generate AVX code. Unfortunately I also find that there are no software prefetch instructions issued in that code. With SSE 4.2 sw prefetch was used.. switching from SSE 4.2 to AVX.. all software prefetches disappeared. Is there a way to get these generated in AVX as they were in SSE 4.2? If so please let me know. Thanks for any feedback...
Tim
I've used the Intel 11.1 compiler to generate AVX code. Unfortunately I also find that there are no software prefetch instructions issued in that code. With SSE 4.2 sw prefetch was used.. switching from SSE 4.2 to AVX.. all software prefetches disappeared. Is there a way to get these generated in AVX as they were in SSE 4.2? If so please let me know. Thanks for any feedback...
Tim
Link Copied
5 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Tim,
I'llenquire aboutthat. Do you have a small piece of code as an example?
Martyn
I'llenquire aboutthat. Do you have a small piece of code as an example?
Martyn
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting - Martyn Corden (Intel)
Hi Tim,
I'llenquire aboutthat. Do you have a small piece of code as an example?
Martyn
I'llenquire aboutthat. Do you have a small piece of code as an example?
Martyn
Martyn,
I'm compiling all of SPEC FP 06.. with both 11.0 and 11.1 and observe that in 11.1 if you replace SSE4.2 switches in public submissions with AVX.. the SW PF disappears. Any help clarifying getting it reinstated is very useful. Thanks Martyn...
Tim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Tim,
I don't think this was intentional, /Qxavx (-xavx) is a new switch and the prefetches haven't got hooked up yet. I'll submit a ticket toget that donein a compiler update. As you know, a lot of prefetching is done in hardware, so software generation of prefetches needs to be selective.Even with -O3 -xsse4.2,you need to add the switch -opt-prefetch to turn on software prefetch generation, but you evidently knew this. -opt-prefetch will still be necessary with -xavx.
Thanks for pointing this out.
Regards,
Martyn
I don't think this was intentional, /Qxavx (-xavx) is a new switch and the prefetches haven't got hooked up yet. I'll submit a ticket toget that donein a compiler update. As you know, a lot of prefetching is done in hardware, so software generation of prefetches needs to be selective.Even with -O3 -xsse4.2,you need to add the switch -opt-prefetch to turn on software prefetch generation, but you evidently knew this. -opt-prefetch will still be necessary with -xavx.
Thanks for pointing this out.
Regards,
Martyn
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting - Martyn Corden (Intel)
Hi Tim,
I don't think this was intentional, /Qxavx (-xavx) is a new switch and the prefetches haven't got hooked up yet. I'll submit a ticket toget that donein a compiler update. As you know, a lot of prefetching is done in hardware, so software generation of prefetches needs to be selective.Even with -O3 -xsse4.2,you need to add the switch -opt-prefetch to turn on software prefetch generation, but you evidently knew this. -opt-prefetch will still be necessary with -xavx.
Thanks for pointing this out.
Regards,
Martyn
I don't think this was intentional, /Qxavx (-xavx) is a new switch and the prefetches haven't got hooked up yet. I'll submit a ticket toget that donein a compiler update. As you know, a lot of prefetching is done in hardware, so software generation of prefetches needs to be selective.Even with -O3 -xsse4.2,you need to add the switch -opt-prefetch to turn on software prefetch generation, but you evidently knew this. -opt-prefetch will still be necessary with -xavx.
Thanks for pointing this out.
Regards,
Martyn
Thanks for looking into this. If you can, please let me know when an update is available for the compiler. I'd be very interested in evaluating it.
Tim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Tim,
I just heard that thefix for this has been targeted for the next major compiler version.
Regards,
Martyn
I just heard that thefix for this has been targeted for the next major compiler version.
Regards,
Martyn
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page