diff --git a/algo/test/CMakeLists.txt b/algo/test/CMakeLists.txt
index b9233c8cc1eb589b46a7eee5563248d33fb803f8..be43848e9f393c352b3afa264285d594c8d564d6 100644
--- a/algo/test/CMakeLists.txt
+++ b/algo/test/CMakeLists.txt
@@ -39,16 +39,16 @@ if (DEFINED ENV{RAW_DATA_PATH})
   if(${CBM_TEST_MODEL} MATCHES MergeRequest OR ${CBM_TEST_MODEL} MATCHES Continuous )
     Message( STATUS "MR or Continuous model detected, decreasing TS nb for OnlineReco tests to single one." )
     SET( RECO_TS_NB 1)
-    SET( RECO_THREADS_NB 1)
+    SET( RECO_THREADS_NB $ENV{number_of_processors_for_test})
     SET( ONLINE_RECO_TO 100) # MR mode on run4: 45-50s for 2391
   elseif(${CBM_TEST_MODEL} MATCHES Weekly OR ${CBM_TEST_MODEL} MATCHES Profile )
     Message( STATUS "Profiling model detected, increasing timeout and TS nb for OnlineReco tests with coverage." )
     SET( RECO_TS_NB 20)
-    SET( RECO_THREADS_NB 1)  # FIXME: check if more should be allowed for weekly (esp on Virgo), need then exclusivity
+    SET( RECO_THREADS_NB $ENV{number_of_processors_for_test})
     SET( ONLINE_RECO_TO 1600) # Coverage mode for run 2391: ???? on run4, ???? on virgo3
   else()
     SET( RECO_TS_NB 3)
-    SET( RECO_THREADS_NB 1)
+    SET( RECO_THREADS_NB $ENV{number_of_processors_for_test})
     SET( ONLINE_RECO_TO  800) # Nightly mode on run4: ??? for 2391
   endif()
 
@@ -60,6 +60,7 @@ if (DEFINED ENV{RAW_DATA_PATH})
   set_tests_properties(OnlineRecoCanProcessTimeslice PROPERTIES
     TIMEOUT ${ONLINE_RECO_TO}
     RESOURCE_LOCK tsa_file_${RUN} # Needed to avoid access collision with offline unpacker
+    RUN_SERIAL TRUE # Do not run in parallel to other tests in order to allow usage of threads
   )
 
 endif()