NT2 is a Matlab inspired, high-level API for scientific computation in C++. Boost.SIMD is a candidate library for inclusion in Boost dealing with the portable encpsulation of SIMD instructions sets. This following releases updates NT2 and Boost.SIMD libraries to version 3.1 This new release of NT2 and Boost.SIMD focused on fixing performance issues and add some new support for architecture and parallel algorithms. The main new features include: - Linear Algebra functions can now use GPGPU through the MAGMA library whenever possible. - Reduction and Scan operations now works with more shared memory back-end - Altivec support is now complete for the VMX ISA We wish to thanks Ian Masliah for his work on MAGMA, Antoine Tran Tan for the shared memory support and Pierre Esterie participation to the Altivec ISA completion. Special thanks to Tim Blenchmann and khegeman for their help and patch submisisons throughout this development. The release Changelog is here : https://github.com/MetaScale/nt2/releases/tag/3.1.0 The files can be download from : http://nt2.metascale.org/downloads/ The Documentation (in progress) is here : http://nt2.metascale.org/doc/html/index.html **Next release announcment** This release is the last C++03 compliant version of both NT2 and Boost.SIMD. The next release - 4.0 - will be C++11 only. The new minimal version of supported compilers will be : - g++ 4.6 - Microsoft Visual Studio 12 (2013) - clang 3.4 - icc 12.1 The main reason for this change is to be able to properly fix the compile-time issue that one may experience. It'll also allow us to use some C++11 feature to simplify or streamline some of the user interface. * The NT2 Team
Note that there is a library which might include similar functionality in the Boost Library Incubator. That library is "Compute". It already has one (very positive) review. I would suggest that you submit this library to the incubator - it only takes a few minutes. www.blincubator.com -- View this message in context: http://boost.2283326.n4.nabble.com/NT-eand-Boost-SIMD-release-3-1-tp4668190p... Sent from the Boost - Dev mailing list archive at Nabble.com.
On 06/10/14 20:24, Robert Ramey wrote:
Note that there is a library which might include similar functionality in the Boost Library Incubator. That library is "Compute". It already has one (very positive) review. I would suggest that you submit this library to the incubator - it only takes a few minutes. www.blincubator.com
Boost.SIMD will be submitted once we fix the compilation time problem. The problem will be easier to solve now that we've made the decision to switch the codebase to C++11.
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 10/7/2014 4:26 AM, Mathias Gaunard wrote:
On 06/10/14 20:24, Robert Ramey wrote:
Note that there is a library which might include similar functionality in the Boost Library Incubator. That library is "Compute". It already has one (very positive) review. I would suggest that you submit this library to the incubator - it only takes a few minutes. www.blincubator.com
Boost.SIMD will be submitted once we fix the compilation time problem. The problem will be easier to solve now that we've made the decision to switch the codebase to C++11.
You might have a look at proto-0x: https://github.com/ericniebler/proto-0x/ It's a pure C++11 rewrite of Boost.Proto. I got 98% done with it, then I got busy working on ranges. I don't expect to be making any radical changes to proto-0x. On the down side: there are no docs. :-( - -- Eric Niebler Boost.org http://www.boost.org -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.21 (MingW32) iQEcBAEBAgAGBQJUM/5UAAoJEAeJsEDfjLbXPuoH/jb/gUp4ukj0afcdBHfzeSFD l/T3PJ3r5UveblueTpArpgYGKitICcazUKFkwhG5WZ+7JmRVcrtXT7Qcgo/nnl6t 1HPCbMlcPJoRLRCry5kvXUQAcgyMG4+fg/VGr/qDhz7q2OSzbQDPXPVm6YblmPum k70X0/3VPFz0sX1UAZa8y0wy7zQxQWFKGh8bzdXREiK1Wm65Th6GwFXc/oweAji+ jTQyJLqtfkaHTqaXmadl4G7FBEniGZ7CiVlRY9mv22ITNhjkhTUsKPoelImtvrtG paElKrapEuPinM6PisXiJ27VQmBv6Q1tO5GFMZOnFBNZidl5ELYDWtjRvyTilIM= =qmLp -----END PGP SIGNATURE-----
On 07/10/14 16:53, Eric Niebler wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On 10/7/2014 4:26 AM, Mathias Gaunard wrote:
On 06/10/14 20:24, Robert Ramey wrote:
Note that there is a library which might include similar functionality in the Boost Library Incubator. That library is "Compute". It already has one (very positive) review. I would suggest that you submit this library to the incubator - it only takes a few minutes. www.blincubator.com
Boost.SIMD will be submitted once we fix the compilation time problem. The problem will be easier to solve now that we've made the decision to switch the codebase to C++11.
You might have a look at proto-0x: https://github.com/ericniebler/proto-0x/
It's a pure C++11 rewrite of Boost.Proto. I got 98% done with it, then I got busy working on ranges. I don't expect to be making any radical changes to proto-0x. On the down side: there are no docs. :-(
We're not focusing on expression templates for now, but the plan is to roll our own set of types instead of using Proto's, and just make them Proto-compatible (minus the proto_grammar typedef). The two things that affect compilation speed the most are the amount of templates instantiated and the symbol length.
On 10/7/2014 9:48 AM, Mathias Gaunard wrote:
We're not focusing on expression templates for now, but the plan is to roll our own set of types instead of using Proto's, and just make them Proto-compatible (minus the proto_grammar typedef).
The two things that affect compilation speed the most are the amount of templates instantiated and the symbol length.
I think it's time for proto-14, using Louis Dionne's generalized-lambdas-as-tuples tricks from Hana as a basis. That would *vastly* improve compile times and shrink symbol lengths to almost nothing. Eric
On 10/17/14, 12:19 AM, Eric Niebler wrote:
On 10/7/2014 9:48 AM, Mathias Gaunard wrote:
We're not focusing on expression templates for now, but the plan is to roll our own set of types instead of using Proto's, and just make them Proto-compatible (minus the proto_grammar typedef).
The two things that affect compilation speed the most are the amount of templates instantiated and the symbol length.
I think it's time for proto-14, using Louis Dionne's generalized-lambdas-as-tuples tricks from Hana as a basis. That would *vastly* improve compile times and shrink symbol lengths to almost nothing.
Indeed. My only problem with it is that I find lambda held types extremely painful to debug -- precisely because the type names are hidden. We tried lambda held types before in X3, but I did not like it for that reason. Regards, -- Joel de Guzman http://www.ciere.com http://boost-spirit.com http://www.cycfi.com/
On 16/10/2014 18:19, Eric Niebler wrote:
On 10/7/2014 9:48 AM, Mathias Gaunard wrote:
We're not focusing on expression templates for now, but the plan is to roll our own set of types instead of using Proto's, and just make them Proto-compatible (minus the proto_grammar typedef).
The two things that affect compilation speed the most are the amount of templates instantiated and the symbol length.
I think it's time for proto-14, using Louis Dionne's generalized-lambdas-as-tuples tricks from Hana as a basis. That would *vastly* improve compile times and shrink symbol lengths to almost nothing.
I've tried the lambda trick to hide symbols, it doesn't actually work. It does work with MSVC, which affects a UUID for each lambda, but with GCC/Clang the name of a lambda contains the name of the function it is created in, which also contains the type of the template parameters that this function takes.
participants (5)
-
Eric Niebler
-
Joel de Guzman
-
Joel FALCOU
-
Mathias Gaunard
-
Robert Ramey