|[eigen] early beta3-preview, MSVC/SSE2 testers wanted|
[ Thread Index |
| More lists.tuxfamily.org/eigen Archives
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: [eigen] early beta3-preview, MSVC/SSE2 testers wanted
- From: "Benoit Jacob" <jacob.benoit.1@xxxxxxxxx>
- Date: Tue, 16 Dec 2008 05:12:38 +0100
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to :subject:mime-version:content-type:content-transfer-encoding :content-disposition; bh=Uc3u/n+mY8BUJveenwpEgBYCE5q/m0z9bGBO+8Md2iQ=; b=fWlgDiivTbrrEMzwMsX43UPB8cEMxy1X7YCK5Hi0KE832euwWNVQrBTCle46pRx9sb 1V/K+fzWWUHnNW/jFjgyJkNBkWiAjWB5ri2UkZoKRNTwbSgIsXGTw4LAbb8fiFcvYg2L f1dBh/+ZE+GWVsQe13wKCaWPwMzu6EIrXvggI=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:mime-version:content-type :content-transfer-encoding:content-disposition; b=EYc9ma8iuU+dlBF1xd1cVZxhBQxsa5jl4Zueu7DTCX9INjpU1aK3ob/4fjhem4FQSy fjsROyXvmwWFFbVxNfcaXYM9I7S3Itxk4xWHE20dNhhD0YNkiOcJ8vQqLx42eeDRRrNs QjUbcLXLuIP3dfvDkNGKojJ7PggBXJv4VNcP4=
Due to the severe bugs fixed since beta2, I propose to make a beta3 soon.
Here is a beta3 preview tarball:
Since one of the big improvements since beta2 is MSVC support with
SSE2 vectorization, I'm very interested if people with this setup
could give this a good testing.
Ideally you would build the testsuite with SSE2 enabled and run it.
I'm not familiar with MSVC but the CMake option to enable tests is
EIGEN_BUILD_TESTS, so you need to pass the option
-DEIGEN_BUILD_TESTS=ON to CMake. Then somehow it should generate a
MSVC project for you (if I understand well). Then you should have
somewhere an option to enable SSE2 vectorization. Note that SSE is not
enough, you need SSE2. Then make the project, be warned that it
reportedly takes very long (MSVC's C++ frontend seems not very
powerful) and will probably consume lots of memory, so adapt
accordingly your number of jobs. Then enter the test/ directory and
run "ctest" there. At least that's what I would do on gnu.
Improvements since beta2 include:
* fix the infamous bug (sorry Tim!!!) where the "unaligned arrays"
assert couldn't be fixed even if you followed the instructions on the
* fixes in diagonal product (see thread on this list, thanks to Gael
for the quick fixes)
* SSE2 is finally detected with MSVC (yes, until today it wasn't!)
* Fix compilation errors with the MSVC + SSE2 combo
* Make "aligned malloc" work also on MSVC by calling _aligned_malloc there
* Many warning fixes thanks to Armin Berres
* Gael continued developing the Sparse module