accULL release 0.2

It’s been a while since we last published an update, but it does not mean we have not been working!

Thanks to the benchmark codes provided by Nick Johnson (EPCC), we have been able to detect several situations that were not properly addressed by our implementation. We also took the opportunity to do some “house cleaning”, and we added a set of tests with an auto-verification script to help the maintenance of the code. Since the 0.1a release that we published on October 11 2012, we have committed around 50 changesets to the compiler and more than 20 to the runtime, so we believe it is that time of the year when we pack everything, write some documentation and release a new version, release 0.2. Still far from version 1.0, but getting closer.

Many thanks to all the people that has contributed to this release, in particular Juan J. Fumero and José L. Grillo, from University of La Laguna, who have been doing an incredible job to have everything ready for this release!

The new version can be downloaded here. Follows is a list of relevant issues added or fixed in this new release:

  • Added 20 new validation tests
  • Added an script to run and check the tests automatically
  • Added support for the acc parallel  directive, including num_gangs and num_workers
  • Improved support for the if clause
  • Many minor/weird bugs fixed both in compiler and runtime
  • Added suport for the firstprivate clause (including arrays)
  • Removed the requirement of putting reduction variables in a copy clause before using it
  • Script to ease the compilation of source code (just type ./accull source.c)
  • Some cleanup in the Frangollo code generator
  • Added support for Kepler cards to the runtime
  • Code generation should be slightly faster than before

As you can see, the majority of the changes have affected the compiler. We expect a new release with many changes to the runtime, addressing cleanup and performance, in a short period of time. Keep posted!

This entry was posted in news, release and tagged , , by Ruyk. Bookmark the permalink.

About Ruyk

Ruyman Reyes has been working in HPC since 2007, when he joined the Research Support Unit at the University of La Laguna as system administrator and user support. He currently works at Codeplay Software Ltd, leading ComputeCpp (Codeplay's SYCL implementation) and contributing to C++ and SYCL standards. He has experience in compiler and runtime technologies, GPU programming and code optimisation. In his free time he loves hiking, swimming and sightseeing. At some point in his past life he played piano and guitar, and he would like to do it again in the near future.

6 thoughts on “accULL release 0.2

  1. I love the compiler. But I do have one question. Does accull allow data construct?
    #paragma acc data copy(A) create(Anew)
    Both of these variables are arrays of size 4096*4096 so as you can tell this is important to only copy once. I tried running the code with the data construct and timing did not go down. I have an account on a cluster that has PGI but I am making a cluster myself and don’t have the money for PGI. I tested the code with PGI and with accuLL. They both give me expected output, but the timing of PGI went from 2 min to 10 seconds and accuLL was not noticable…
    Thanks in advance and I hope this project is in for the long run. It is a great Idea to make a free compiler for OpenACC!!!!!

    • Hi Will,

      Yes, we have the data construct and it should work with the 0.2 release. I am not sure of why you don’t see the performance improvement.
      We are about to release the 0.3, which should fix some problems that we noticed with the 0.2, maybe you can try with the new one and see what happens?
      Thanks for contacting us!

      • Thank you for such a quick reply. I will wait for the 0.3 release. I will also check the code to see if the code is correct. Is there somewhere I could post bugs. I would like to help because I will be using this a lot

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s