[Rock-dev] Usage of SSE* CPU features ...

Sylvain Joyeux sylvain.joyeux at dfki.de
Mon Sep 5 17:24:58 CEST 2011


Some packages start to -- sometimes sneakily -- introduce dependence on 
CPU features such as SSE*. Such packages are OpenCV and libelas

In libelas, this support is mandatory, so there's not much to do about it.

In OpenCV, it is experimental. The person that added opencv 2.3 to rock 
turned these features ON by default.

My question:
   * is opencv using an autodetection feature ? I.e. does it turn them 
off at runtime if the CPU does not support them, or will the user get a 
"wrong instruction" error ?
   * in the latter case, what should be the default ? I would go for "do 
not enable SSE >= 4 by default" and explain how to enable it to users on 
the wiki. For OpenCV, it would be reenabled by adding the following code 
snippet in autoproj/overrides.rb

   setup_package("external/opencv") do |pkg|
     pkg.define("ENABLE_SSE41","ON")
     pkg.define("ENABLE_SSE42","ON")
     pkg.define("ENABLE_SSSE3","ON")
   end

For the time being, I disabled SSE >= 4 in the rock package set (that 
seems to be the safest until we resolve the question).

-- 
Sylvain Joyeux
Space&  Security Robotics

!!! Achtung, neue Telefonnummer!!!

Standort Bremen:
DFKI GmbH
Robotics Innovation Center
Robert-Hooke-Straße 5
28359 Bremen, Germany

Phone: +49 (0)421 178-454136
Fax:   +49 (0)421 218-454150
E-Mail: robotik at dfki.de

Weitere Informationen: http://www.dfki.de/robotik
-----------------------------------------------------------------------
Deutsches Forschungszentrum fuer Kuenstliche Intelligenz GmbH
Firmensitz: Trippstadter Straße 122, D-67663 Kaiserslautern
Geschaeftsfuehrung: Prof. Dr. Dr. h.c. mult. Wolfgang Wahlster
(Vorsitzender) Dr. Walter Olthoff
Vorsitzender des Aufsichtsrats: Prof. Dr. h.c. Hans A. Aukes
Amtsgericht Kaiserslautern, HRB 2313
Sitz der Gesellschaft: Kaiserslautern (HRB 2313)
USt-Id.Nr.:    DE 148646973
Steuernummer:  19/673/0060/3
-----------------------------------------------------------------------



More information about the Rock-dev mailing list