cmake vs. scons: slow analysis

Bug #1879681 reported by Daniel Schürmann
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mixxx
Fix Released
High
Daniel Schürmann

Bug Description

While testing https://bugs.launchpad.net/mixxx/+bug/1879588
i have found a regression when switching to cmake.
The beat analysis performs significant slower with cmake
Scons 4 s
CMake 6 s

44.2 kHz and 48 kHz Tracks are effected in the same way.

Revision history for this message
Daniel Schürmann (daschuer) wrote :

Tested was the commit: b7bf705804d19375dc764468e1997fe25e647555
which is still suffering the regression fixed in
https://github.com/mixxxdj/mixxx/pull/2683

Revision history for this message
Daniel Schürmann (daschuer) wrote :

With current master 2.4 alpha 436f30d82f616d8d04912d1bb827532c777d3ec7, the thing is the same for
44.2k, but worse for 48k

44.2k Track
Scons 4 s
CMake 6 s

48k Track
Scons 25 s
CMake 133 s

The difference between 48k and 44.2 k is the topic of
https://bugs.launchpad.net/mixxx/+bug/1879588

Changed in mixxx:
status: New → In Progress
importance: Undecided → High
assignee: nobody → Daniel Schürmann (daschuer)
milestone: none → 2.3.0
Revision history for this message
Daniel Schürmann (daschuer) wrote :

The issue is that CMake explicit defines
-msse -mfpmath=sse
This is a de-optimizing for 64 bit builds where SSE2 is always available.

We build by default with OPTIMIZE "portable" which requires at least SSE on a 32 bit CPU.

But even my 2008 Intel Atom N270 features 32 bit only but has SSE2 registers.
I looks like one of the last 32 bit Processors release without was the Celeron (P6), produce until 2002

So I think we can safely advance and require SSE2 for "portable" 32 bit builds and let the others use legacy or native if there are any.

Revision history for this message
Daniel Schürmann (daschuer) wrote :

OK, Scons already requires SSE2 for portable builds. It is just a typo in CMakeList.txt

Revision history for this message
Daniel Schürmann (daschuer) wrote :

The typo is fixed here: https://github.com/mixxxdj/mixxx/pull/2808
But the performance difference not ... Ideas?

Revision history for this message
Daniel Schürmann (daschuer) wrote :
Changed in mixxx:
status: In Progress → Fix Committed
Changed in mixxx:
status: Fix Committed → Fix Released
Revision history for this message
Swiftb0y (swiftb0y) wrote :

Mixxx now uses GitHub for bug tracking. This bug has been migrated to:
https://github.com/mixxxdj/mixxx/issues/9986

lock status: Metadata changes locked and limited to project staff
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.