ispc 1.9.2rc1

53 views
Skip to first unread message

Dmitry Babokin

unread,
May 17, 2017, 3:33:58 AM5/17/17
to ispc-...@googlegroups.com, ispc...@googlegroups.com
Hello,

We are going to release ispc 1.9.2 soon and have prepared a release candidate for those of you who prefer to use pre-built binaries. Please give it a try and let us know if you see any problems with your code.


Main changes:
- debug support on Windows fixed
- SVML support for AVX512 targets
- several stability fixes
- based on LLVM 3.9 (we are still avoiding LLVM 4.0 due to know stability and performance problems)

B.Stastny

unread,
May 17, 2017, 1:45:36 PM5/17/17
to ispc-...@googlegroups.com, ispc...@googlegroups.com
This is kind of odd that it came from an Intel employee from their personal email address claiming pre-built binaries.  Is this actually a legit release from Intel or is this a personal release?  I would expect the binaries to be officially hosted on the Website as pre-release over being emailed out and definitely not stored on a google drive. 

Odd to anyone else? 

-bret

--
You received this message because you are subscribed to the Google Groups "Intel SPMD Program Compiler Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ispc-users+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Dmitry Babokin

unread,
May 17, 2017, 4:34:54 PM5/17/17
to ispc-...@googlegroups.com, ispc...@googlegroups.com
Bret,

Thanks for your feedback, you are raising a valid concern. Let me explain why this happens this way.

ISPC is an open source project. It's backed by Intel, but it's *not an Intel product*.

So it shouldn't matter much if maintainers operate from @gmail.com or @intel.com email address, as long as they maintain the project. When I started working on this project, I had to make a choice which email address to use and strong argument for @gmail.com address was that most of the people in open source community use gmail and hate the way Outlook formatting looks in gmail (AFAIK this concern was raises in gcc and llvm communities). So I decided to stick to gmail mailbox. Since that time this formatting issue became far less noticeable, so probably it's good time to reconsider this decision.

The reason for using Google Drive - it's just much handy for me and for release candidate I consider it to be just good enough. Official release will be hosted on regular SourceForge site, as usual.

And of course, you always have an option to build ISPC yourself, if you prefer. Pre-built binaries is just a convenience feature.

Have you had a chance to try release candidate? Does it work well for your code?

Dmitry.

psmilek

unread,
Jun 5, 2017, 9:22:13 AM6/5/17
to Intel SPMD Program Compiler Developers, ispc-...@googlegroups.com
Hi Dimitry,
I tested new release candidate on my ISPC code (various noise generators) and I confirm, that in my case it works fine.
There is also nice speedup of generated code as a bonus ! :) 

Following is result of my benchmark, which consists of filling texture of size 512x512 (float32 format) 100 times with various noises.
'Mp' in following log means fillrate in mega-pixels per second.


ISPC 1.9.1

Value2D SIMD4: (512x512), 12 octaves, 17.118988 Mp, 1.531305 second(s)
Value2D SIMD8: (512x512), 12 octaves, 37.554026 Mp, 0.698045 second(s)
Perlin2D SIMD4: (512x512), 12 octaves, 8.259425 Mp, 3.173877 second(s)
Perlin2D SIMD8: (512x512), 12 octaves, 16.031377 Mp, 1.635193 second(s)
Cellular2D SIMD4: (512x512), 12 octaves, 6.949015 Mp, 3.772391 second(s)
Cellular2D SIMD8: (512x512), 12 octaves, 14.123636 Mp, 1.856066 second(s)


ISPC 1.9.2rc1

Value2D SIMD4: (512x512), 12 octaves, 18.599472 Mp, 1.409416 second(s)
Value2D SIMD8: (512x512), 12 octaves, 40.285944 Mp, 0.650708 second(s)
Perlin2D SIMD4: (512x512), 12 octaves, 8.349595 Mp, 3.139601 second(s)
Perlin2D SIMD8: (512x512), 12 octaves, 16.741686 Mp, 1.565816 second(s)
Cellular2D SIMD4: (512x512), 12 octaves, 6.973369 Mp, 3.759216 second(s)
Cellular2D SIMD8: (512x512), 12 octaves, 13.938580 Mp, 1.880708 second(s)


Thanks for your effort in improving ISCP compiler !

Dmitry Babokin

unread,
Jun 5, 2017, 1:01:38 PM6/5/17
to ispc...@googlegroups.com, ispc-...@googlegroups.com
Nice! Thanks for trying!

--
You received this message because you are subscribed to the Google Groups "Intel SPMD Program Compiler Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ispc-dev+unsubscribe@googlegroups.com.

psmilek

unread,
Jun 15, 2017, 4:40:36 AM6/15/17
to Intel SPMD Program Compiler Users, ispc...@googlegroups.com
I have further info about nice behavior of new version ! I ported simple diffusive water simulation over heightfield terrain
to ISPC and here are results:

ISPC 1.9.1
This version displays performance warnings (quite unexpected in this case) about using scatter / gather instructions
when compiling kernel and it results in very low performance:

Nexus::TestWaterSimPerformance: water sim took 51.172697 second(s) (1000 iters, 4096x4096)

ISPC 1.9.2rc1
No scatter / gather performance warnings and much better performance:

Nexus::TestWaterSimPerformance: water sim took 13.282045 second(s) (1000 iters, 4096x4096)
Nice! Thanks for trying!

To unsubscribe from this group and stop receiving emails from it, send an email to ispc-dev+u...@googlegroups.com.

Dmitry Babokin

unread,
Jun 16, 2017, 3:52:21 AM6/16/17
to ispc...@googlegroups.com, Intel SPMD Program Compiler Users
Yes, this is one of known problems, which sneaked to 1.9.1. It was reported in issue #1273 and was recently fixed (https://github.com/ispc/ispc/commit/3009c6fa608bbc01ba50a178ee8cc33e24e38823). My estimation is that it was not showing up too frequently, though apparently it was frequent enough to get noticed and reported.

Thanks for letting us know that it works now!



To unsubscribe from this group and stop receiving emails from it, send an email to ispc-dev+unsubscribe@googlegroups.com.

Dmitry Babokin

unread,
Aug 16, 2017, 1:39:23 PM8/16/17
to ispc-...@googlegroups.com, ispc...@googlegroups.com
Hi Niko,

We decided to release with LLVM 5.0 and are waiting for it. It should be released on August 23rd according to schedule on llvm.org. Currently it's in rc2 stage.

Note, you can use VS2015 binaries unless you are using ispc "print" function, the rest functionality should work without problems.

Dmitry.

On Tue, Aug 15, 2017 at 11:52 PM, Niko Nevatie <nnev...@gmail.com> wrote:
Hi, do you have any plans on the schedule of the 1.9.2 release? We are blocked by the issue #1273 wrt. upgrading to 1.9.1 (almost all of our ISPC code emit a lot of performance warnings from valid code with 1.9.1).

If the release is not happening in the near future, would you happen to have a MSVC 2013 -compatible set of binaries for the release candidate?

--
You received this message because you are subscribed to the Google Groups "Intel SPMD Program Compiler Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ispc-users+unsubscribe@googlegroups.com.

Dmitry Babokin

unread,
Aug 18, 2017, 1:24:58 AM8/18/17
to ispc-...@googlegroups.com, ispc...@googlegroups.com
> On that note, is LLVM 5.0 bringing new/enhanced optimizations to the next ISPC release?

It mostly affect AVX-512 targets (better both stability and performance). Effect on other x86 targets is not significant.


On Thu, Aug 17, 2017 at 12:23 AM, Niko Nevatie <nnev...@gmail.com> wrote:
Ok, thanks for the information. I built myself the 1.9.2-dev yesterday based on LLVM/Clang 3.9.1 on MSVC 2013 (x86) - it's working as expected.

On that note, is LLVM 5.0 bringing new/enhanced optimizations to the next ISPC release?
To unsubscribe from this group and stop receiving emails from it, send an email to ispc-users+...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages