Posted by: wbailer | January 17, 2012

Shogun Machine Learning Toolbox under Win64

I’ve used the Shogun Machine Learning Toolbox under Win32, compiled in the Cygwin environment, as described in the documentation. However, for processing a large data set, I needed a 64bit build. As there is currently no 64bit version of Cygwin, I followed the approach described here, using MinGW-w64.

The current version of Cygwin includes MinGW-w64, as well as an appropriate build of pthreads (if needed: compile pthreads as described here).

To configure, pass the MinGW-w64 to the script:

--cc=/usr/bin/x86_64-w64-mingw32-gcc --cflags=-m64
--cxx=/usr/bin/x86_64-w64-mingw32-gcc --cxxflags=-m64

Note: the path needs to be included due to a bug in MinGW-w64, as described on the MinGW-w64 site:

The mingw-w64 toolchain has been officially added to Cygwin mirrors, you can find the basic C toolchain as mingw64-x86_64-gcc-core. The languages enabled are C, Ada, C++, Fortran, Object C and Objective C++. There is a known caveat where calling the compiler directly as “/bin/x86_64-w64-mingw32-gcc” will fail, use “/usr/bin/x86_64-w64-mingw32-gcc” instead and make sure that your PATH variable has “/usr/bin” before “/bin”.

In addition, we add the following libraries to the linker:

-lstdc++ -lmsvcrt -lpthread

As MinGW-w64 has WIN32 defined (in contrast to GCC under Cygwin), there are a number of issues in the Shogun code that need to be fixed (see patch).

Currently, the following issues in the code are still unresolved:

  • only command line static interface is supported
  • MemoryMappedFile is not implemented (needs reimplementation based on Win API

After the Shogun library is built, ranlib needs to be run before building the command line interface:

/usr/bin/x86_64-w64-mingw32-ranlib shogun/libshogun.a

The resulting command line application needs the MinGW DLLs in the path. It also has the following limitations:

  • some strange characters in console (instead of colors)
  • issues with locale setting in when serialising/parsing files
  • applications exists on exceptions from SG_ERROR
Posted by: wbailer | January 16, 2012

Programmieren Sie auch noch mit Holzkohle?

Had some issues with non-existing defines in the MinGW environment, and came across the following auto-translation.

Original posting:

Clarification: Where “most platforms” refers to platforms with a C99-compliant fscanf/scanf that can handle the hh prefix for char, not just the h prefix for short.

Translation to German:

Erklärung: Wo „die meisten Plattformen“ auf Plattformen mit einem C99-compliant fscanf/scanf sich bezieht, das das hh Präfix für Holzkohle behandeln kann, nicht gerade setzen das h kurz vor.

No doubt, char means Holzkohle, although it could mean Saibling as well (but that’s fishy …).

Posted by: wbailer | October 3, 2011

3D Hype (cont’d)

My colleague bought a backpack with 3D mesh:

In contrast to all these conventional flat backpacks …

Posted by: wbailer | July 27, 2011

Spotted the [gu:gl] truck in Graz

Posted by: wbailer | June 2, 2011

Transporn

According to the title of the page, this seems to be an interesting ride …

Posted by: wbailer | December 10, 2010

Could not delete personal information

Message from Excel when saving sheet:

Sounds like a lame excuse on a systemw with 4GB RAM …

Posted by: wbailer | November 28, 2010

The lame bull

Obviously the bull has still not recovered enough to move on his own feet:

Tax payers might have suspected that …

Posted by: wbailer | November 2, 2010

Incredible personalisation!

The picture in my room in the IBIS hotel in Lyon:

Posted by: wbailer | November 1, 2010

Please stand by while rebooting the ticket machine …

Boot log of an ÖBB ticket machine

Posted by: wbailer | September 14, 2010

Austria is everywhere …

… according to Google Maps we have occupied the Dutch Film Museum – or is it just the new top-level domain for AmsTerdam?

Older Posts »

Categories

Follow

Get every new post delivered to your Inbox.