mlpack / ensmallen

A header-only C++ library for numerical optimization --

Home Page:http://ensmallen.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[PowerPC] Bus error during running tests: `KERN_PROTECTION_FAILURE at address: 0x00000000`

barracuda156 opened this issue · comments

Issue description

During running tests on Darwin ppc there is a Bus error.

Your environment

  • version of ensmallen: 2.21.0
  • operating system: macOS 10.6
  • compiler: gcc 13.2.0
  • version of Armadillo: 12.6.7
  • any other environment information you think is relevant: PowerPC 32-bit (Big-endian)

Steps to reproduce

./ensmallen_tests --durations yes

Expected behavior

Test should pass without failures.

Actual behavior

36-29% sudo gdb-apple --args ./ensmallen_tests --durations yes
sudo: ignoring time stamp from the future
Password:
GNU gdb 6.3.50.20050815-cvs (Wed Apr 13 04:55:50 UTC 2022)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "--host=powerpc-apple-darwin10.0.0d2 --target="...Reading symbols for shared libraries ...... done

(gdb) run
Starting program: /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_ensmallen/ensmallen/work/build/ensmallen_tests --durations yes
Reading symbols for shared libraries +++++................................................... done
ensmallen_tests(45275,0x805408) malloc: *** error for object 0x3a7d034: Non-aligned pointer being freed
*** set a breakpoint in malloc_error_break to debug
ensmallen_tests(45275,0x805408) malloc: *** error for object 0x3a7d0a4: Non-aligned pointer being freed
*** set a breakpoint in malloc_error_break to debug
ensmallen_tests(45275,0x805408) malloc: *** error for object 0x570880: Non-aligned pointer being freed (2)
*** set a breakpoint in malloc_error_break to debug
ensmallen_tests(45275,0x805408) malloc: *** error for object 0x56fee8: Non-aligned pointer being freed
*** set a breakpoint in malloc_error_break to debug
ensmallen_tests(45275,0x805408) malloc: *** error for object 0x56fe50: Non-aligned pointer being freed (2)
*** set a breakpoint in malloc_error_break to debug
ensmallen_tests(45275,0x805408) malloc: *** error for object 0x56fe9c: Non-aligned pointer being freed
*** set a breakpoint in malloc_error_break to debug
ensmallen_tests(45275,0x805408) malloc: *** error for object 0x56fd88: Non-aligned pointer being freed
*** set a breakpoint in malloc_error_break to debug
ensmallen_tests(45275,0x805408) malloc: *** error for object 0x56fc60: Non-aligned pointer being freed (2)
*** set a breakpoint in malloc_error_break to debug
ensmallen_tests(45275,0x805408) malloc: *** error for object 0x56fb80: Non-aligned pointer being freed (2)
*** set a breakpoint in malloc_error_break to debug
ensmallen_tests(45275,0x805408) malloc: *** error for object 0x56fbf0: Non-aligned pointer being freed (2)
*** set a breakpoint in malloc_error_break to debug
ensmallen_tests(45275,0x805408) malloc: *** error for object 0x56fab8: Non-aligned pointer being freed
*** set a breakpoint in malloc_error_break to debug
ensmallen_tests(45275,0x805408) malloc: *** error for object 0x5707c0: Non-aligned pointer being freed (2)
*** set a breakpoint in malloc_error_break to debug
ensmallen_tests(45275,0x805408) malloc: *** error for object 0x570940: Non-aligned pointer being freed (2)
*** set a breakpoint in malloc_error_break to debug
ensmallen_tests(45275,0x805408) malloc: *** error for object 0x57094c: Non-aligned pointer being freed
*** set a breakpoint in malloc_error_break to debug
ensmallen_tests(45275,0x805408) malloc: *** error for object 0x570968: Non-aligned pointer being freed
*** set a breakpoint in malloc_error_break to debug
ensmallen version: 2.20.0 (Stripped Bolt Head)
armadillo version: 12.6.7 (Cortisol Retox)
random seed: 0
0.003 s: ActiveCMAESRosenbrockFunctionTest
0.312 s: ApproxActiveCMAESRosenbrockFunctionTest
0.002 s: ActiveCMAESRosenbrockFunctionFMatTest
0.042 s: ApproxActiveCMAESRosenbrockFunctionFMatTest
0.117 s: ApproxActiveCMAESEmptyTransformationLogisticRegressionFMatTest
0.000 s: AdaBeliefSphereFunctionTest
0.000 s: AdaBeliefSphereFunctionTestFMat
0.000 s: AdaBeliefMcCormickFunctionTest
0.117 s: AdaBeliefLogisticRegressionTest
0.136 s: AdaBeliefLogisticRegressionFMatTest
0.000 s: AdaBoundSphereFunctionTest
0.000 s: AdaBoundSphereFunctionTestFMat
0.000 s: AMSBoundSphereFunctionTest
0.000 s: AMSBoundphereFunctionTestFMat
0.006 s: AdaBoundSphereFunctionTestSpMat
0.001 s: AdaBoundSphereFunctionTestSpMatDenseGradient
0.007 s: AMSBoundSphereFunctionTestSpMat
0.001 s: AMSBoundSphereFunctionTestSpMatDenseGradient
0.115 s: AdaDeltaLogisticRegressionTest
0.116 s: AdaDeltaLogisticRegressionTestFMat
4.594 s: AdaGradLogisticRegressionTest
0.916 s: AdaGradLogisticRegressionTestFMat
4.684 s: AdaSqrtLogisticRegressionTest
4.499 s: AdaSqrtLogisticRegressionTestFMat
0.000 s: AdamSphereFunctionTest
0.000 s: AdamSphereFunctionTestFMat
0.001 s: AdamSphereFunctionTestSpMat
0.000 s: AdamSphereFunctionTestSpMatDenseGradient
0.000 s: AdamStyblinskiTangFunctionTest
0.000 s: AdamMcCormickFunctionTest
0.000 s: AdamMatyasFunctionTest
0.000 s: AdamEasomFunctionTest
0.001 s: AdamBoothFunctionTest
0.092 s: AMSGradSphereFunctionTestFMat
2.493 s: AMSGradSphereFunctionTestSpMat
0.227 s: AMSGradSphereFunctionTestSpMatDenseGradient
0.116 s: AdamLogisticRegressionTest
13.796 s: AdaMaxLogisticRegressionTest
1.551 s: AMSGradLogisticRegressionTest
0.117 s: NadamLogisticRegressionTest
14.910 s: NadaMaxLogisticRegressionTest
0.119 s: OptimisticAdamLogisticRegressionTest
0.126 s: PadamLogisticRegressionTest
0.118 s: QHAdamLogisticRegressionTest
0.118 s: QHAdamLogisticRegressionFMatTest
6.650 s: QHAdamLogisticRegressionSpMatTest
0.457 s: AdamAckleyFunctionTest
0.002 s: AdamBealeFunctionTest
0.011 s: AdamGoldsteinPriceFunctionTest
0.001 s: AdamLevyFunctionTest
0.000 s: AdamHimmelblauFunctionTest
0.005 s: AdamThreeHumpCamelFunctionTest
0.000 s: AdamResetPolicyTest
0.001 s: AugLagrangianTestFunctionTest
0.001 s: GockenbachFunctionTest
0.001 s: GockenbachFunctionFMatTest
0.045 s: GockenbachFunctionSpMatTest
0.170 s: BBSBBLogisticRegressionTest
0.501 s: BBSArmijoLogisticRegressionTest
0.174 s: BBSBBLogisticRegressionFMatTest
0.509 s: BBSArmijoLogisticRegressionFMatTest
4.214 s: BBSBBLogisticRegressionSpMatTest
13.029 s: BBSArmijoLogisticRegressionSpMatTest
0.034 s: EarlyStopAtMinLossLambdaCallbackTest
0.097 s: EarlyStopAtMinLossCustomLambdaTest
0.056 s: ActiveCMAESCallbacksFullFunctionTest
0.023 s: AdaBoundCallbacksFullFunctionTest
0.027 s: AdaDeltaCallbacksFullFunctionTest
0.027 s: AdaGradCallbacksFullFunctionTest
0.025 s: AdamCallbacksFullFunctionTest
0.043 s: BigBatchSGDCallbacksFullFunctionTest
0.055 s: CMAESCallbacksFullFunctionTest
0.082 s: CNECallbacksFullFunctionTest
0.282 s: DECallbacksFullFunctionTest
0.030 s: EveCallbacksFullFunctionTest
0.040 s: FTMLCallbacksFullFunctionTest
0.022 s: GradientDescentCallbacksFullFunctionTest
0.050 s: IQNCallbacksFullFunctionTest
0.040 s: KatyushaCallbacksFullFunctionTest
4.063 s: NSGA2CallbacksFullFunctionTest
1.560 s: MOEADCallbacksFullFunctionTest
0.047 s: LookaheadCallbacksFullFunctionTest
0.026 s: PadamCallbacksFullFunctionTest
0.024 s: QHAdamCallbacksFullFunctionTest
0.025 s: RMSPropCallbacksFullFunctionTest
0.035 s: SARAHCallbacksFullFunctionTest
0.022 s: SCDCallbacksFullFunctionTest
0.027 s: SGDCallbacksFullFunctionTest
0.032 s: SGDRCallbacksFullFunctionTest
0.024 s: SMORMS3CallbacksFullFunctionTest
0.024 s: SPALeRASGDCallbacksFullFunctionTest
0.022 s: SPSACallbacksFullFunctionTest
0.060 s: SVRGCallbacksFullFunctionTest
0.037 s: SWATSCallbacksFullFunctionTest
0.053 s: WNGradCallbacksFullFunctionTest
0.034 s: ParallelSGDCallbacksFullFunctionTest
6.449 s: LBestPSOCallbacksFullFunctionTest
0.023 s: L_BFGSCallbacksFullFunctionTest
0.169 s: SACallbacksFullFunctionTest
4.429 s: EarlyStopAtMinLossCallbackTest
0.000 s: PrintLossCallbackTest
0.000 s: ProgressBarCallbackTest
5.469 s: StoreBestCoordinatesCallbackTest
0.500 s: TimerStopCallbackTest
0.000 s: ProgressBarCallbackNoMaxIterationsTest
0.000 s: ProgressBarCallbackNoMaxIterationsEpochTest
0.000 s: ProgressBarCallbackEpochTest
0.028 s: ReportCallbackTest

Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x00000000
0x00000000 in ?? ()
(gdb) where
#0  0x00000000 in ?? ()
Cannot access memory at address 0x0
Cannot access memory at address 0x0
Cannot access memory at address 0x0
Cannot access memory at address 0x0
Cannot access memory at address 0x0
Cannot access memory at address 0x0
#1  0x03a1f364 in std::istream::_M_extract<double> ()
Cannot access memory at address 0x0
Cannot access memory at address 0x0
Cannot access memory at address 0x0
Cannot access memory at address 0x0
Cannot access memory at address 0x0
#2  0x00213050 in C_A_T_C_H_T_E_S_T_90 ()
Cannot access memory at address 0x0
#3  0x0000c48c in Catch::RunContext::invokeActiveTestCase ()
#4  0x0001cee4 in Catch::RunContext::runCurrentTest ()
#5  0x000234f4 in Catch::RunContext::runTest ()
#6  0x00023fa0 in Catch::Session::runInternal ()
#7  0x000241dc in Catch::Session::run ()
#8  0x0024dd1c in main ()

Thanks for the report, looking into it.

Hmm, I wonder if it is just because getline is missing on macOS < 10.7, and is used in the next test after ReportCallbackTest (provided the sequence is identical across platforms: on Sonoma all tests run, though one case fails):

while (std::getline(stream, line, '\n'))

I will check this out.

UPD. Please ignore malloc errors, that happens due to a peculiarity of the old macOS, where there are two libstdc++, when a modern GCC gets installed. I have added a fix now, and those errors are gone.

@zoq No, we do not need getline in the SDK, apparently. Solving malloc issue somehow fixed the initial failure (which was occurring consistently otherwise, I reran tests a few times). I have no idea why :)

We do not need to merge a fix for malloc issue, it is perhaps too much of a hassle, unless you know a neater way to do it. What fixes it is adding a wrapper which sets DYLD_LIBRARY_PATH to the location of GCC libraries, so that its libstdc++ is found prior to the one sitting in system prefix:

    pre-test {
        if {${os.platform} eq "darwin" && ${configure.cxx_stdlib} ne "libc++"} {
            move    ${cmake.build_dir}/ensmallen_tests \
                    ${cmake.build_dir}/ensmallen_tests-orig

            set  wrapper    [open "${cmake.build_dir}/ensmallen_tests" w 0755]
            puts ${wrapper} "#!/bin/bash"
            puts ${wrapper} ""
            puts ${wrapper} {if [ -n "$DYLD_LIBRARY_PATH" ]; then}
            puts ${wrapper} "   DYLD_LIBRARY_PATH=${prefix}/lib/libgcc:\${DYLD_LIBRARY_PATH}"
            puts ${wrapper} {else}
            puts ${wrapper} "   DYLD_LIBRARY_PATH=${prefix}/lib/libgcc"
            puts ${wrapper} {fi}
            puts ${wrapper} {export DYLD_LIBRARY_PATH}
            puts ${wrapper} ""
            puts ${wrapper} {exec "${0}-orig" "$@"}
            close $wrapper
        }
    }

(This is only needed when GCC is used with libstdc++; it is arch-agnostic, but typically happens on PowerPC, since there we only have GCC, and libc++ is not yet functional.)

--->  Testing ensmallen
Executing:  cd "/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_ensmallen/ensmallen/work/build" && ./ensmallen_tests --durations yes 
ensmallen version: 2.20.0 (Stripped Bolt Head)
armadillo version: 12.6.7 (Cortisol Retox)
random seed: 0
0.056 s: ActiveCMAESRosenbrockFunctionTest
0.308 s: ApproxActiveCMAESRosenbrockFunctionTest
0.008 s: ActiveCMAESRosenbrockFunctionFMatTest
0.044 s: ApproxActiveCMAESRosenbrockFunctionFMatTest
0.120 s: ApproxActiveCMAESEmptyTransformationLogisticRegressionFMatTest
0.000 s: AdaBeliefSphereFunctionTest
0.000 s: AdaBeliefSphereFunctionTestFMat
0.000 s: AdaBeliefMcCormickFunctionTest
0.119 s: AdaBeliefLogisticRegressionTest
0.140 s: AdaBeliefLogisticRegressionFMatTest
0.000 s: AdaBoundSphereFunctionTest
0.000 s: AdaBoundSphereFunctionTestFMat
0.000 s: AMSBoundSphereFunctionTest
0.000 s: AMSBoundphereFunctionTestFMat
0.006 s: AdaBoundSphereFunctionTestSpMat
0.001 s: AdaBoundSphereFunctionTestSpMatDenseGradient
0.007 s: AMSBoundSphereFunctionTestSpMat
0.001 s: AMSBoundSphereFunctionTestSpMatDenseGradient
0.119 s: AdaDeltaLogisticRegressionTest
0.119 s: AdaDeltaLogisticRegressionTestFMat
4.603 s: AdaGradLogisticRegressionTest
0.928 s: AdaGradLogisticRegressionTestFMat
4.626 s: AdaSqrtLogisticRegressionTest
4.478 s: AdaSqrtLogisticRegressionTestFMat
0.000 s: AdamSphereFunctionTest
0.000 s: AdamSphereFunctionTestFMat
0.001 s: AdamSphereFunctionTestSpMat
0.000 s: AdamSphereFunctionTestSpMatDenseGradient
0.000 s: AdamStyblinskiTangFunctionTest
0.000 s: AdamMcCormickFunctionTest
0.000 s: AdamMatyasFunctionTest
0.000 s: AdamEasomFunctionTest
0.001 s: AdamBoothFunctionTest
0.091 s: AMSGradSphereFunctionTestFMat
2.559 s: AMSGradSphereFunctionTestSpMat
0.236 s: AMSGradSphereFunctionTestSpMatDenseGradient
0.118 s: AdamLogisticRegressionTest
13.866 s: AdaMaxLogisticRegressionTest
1.542 s: AMSGradLogisticRegressionTest
0.121 s: NadamLogisticRegressionTest
14.949 s: NadaMaxLogisticRegressionTest
0.122 s: OptimisticAdamLogisticRegressionTest
0.124 s: PadamLogisticRegressionTest
0.129 s: QHAdamLogisticRegressionTest
0.118 s: QHAdamLogisticRegressionFMatTest
6.660 s: QHAdamLogisticRegressionSpMatTest
0.465 s: AdamAckleyFunctionTest
0.002 s: AdamBealeFunctionTest
0.011 s: AdamGoldsteinPriceFunctionTest
0.001 s: AdamLevyFunctionTest
0.000 s: AdamHimmelblauFunctionTest
0.005 s: AdamThreeHumpCamelFunctionTest
0.000 s: AdamResetPolicyTest
0.001 s: AugLagrangianTestFunctionTest
0.001 s: GockenbachFunctionTest
0.001 s: GockenbachFunctionFMatTest
0.048 s: GockenbachFunctionSpMatTest
0.180 s: BBSBBLogisticRegressionTest
0.525 s: BBSArmijoLogisticRegressionTest
0.190 s: BBSBBLogisticRegressionFMatTest
0.524 s: BBSArmijoLogisticRegressionFMatTest
4.292 s: BBSBBLogisticRegressionSpMatTest
13.348 s: BBSArmijoLogisticRegressionSpMatTest
0.035 s: EarlyStopAtMinLossLambdaCallbackTest
0.097 s: EarlyStopAtMinLossCustomLambdaTest
0.058 s: ActiveCMAESCallbacksFullFunctionTest
0.026 s: AdaBoundCallbacksFullFunctionTest
0.029 s: AdaDeltaCallbacksFullFunctionTest
0.030 s: AdaGradCallbacksFullFunctionTest
0.026 s: AdamCallbacksFullFunctionTest
0.047 s: BigBatchSGDCallbacksFullFunctionTest
0.058 s: CMAESCallbacksFullFunctionTest
0.084 s: CNECallbacksFullFunctionTest
0.284 s: DECallbacksFullFunctionTest
0.029 s: EveCallbacksFullFunctionTest
0.031 s: FTMLCallbacksFullFunctionTest
0.024 s: GradientDescentCallbacksFullFunctionTest
0.058 s: IQNCallbacksFullFunctionTest
0.043 s: KatyushaCallbacksFullFunctionTest
4.031 s: NSGA2CallbacksFullFunctionTest
1.552 s: MOEADCallbacksFullFunctionTest
0.050 s: LookaheadCallbacksFullFunctionTest
0.028 s: PadamCallbacksFullFunctionTest
0.027 s: QHAdamCallbacksFullFunctionTest
0.029 s: RMSPropCallbacksFullFunctionTest
0.036 s: SARAHCallbacksFullFunctionTest
0.027 s: SCDCallbacksFullFunctionTest
0.032 s: SGDCallbacksFullFunctionTest
0.029 s: SGDRCallbacksFullFunctionTest
0.027 s: SMORMS3CallbacksFullFunctionTest
0.026 s: SPALeRASGDCallbacksFullFunctionTest
0.028 s: SPSACallbacksFullFunctionTest
0.039 s: SVRGCallbacksFullFunctionTest
0.026 s: SWATSCallbacksFullFunctionTest
0.027 s: WNGradCallbacksFullFunctionTest
0.029 s: ParallelSGDCallbacksFullFunctionTest
6.218 s: LBestPSOCallbacksFullFunctionTest
0.025 s: L_BFGSCallbacksFullFunctionTest
0.189 s: SACallbacksFullFunctionTest
4.333 s: EarlyStopAtMinLossCallbackTest
0.000 s: PrintLossCallbackTest
0.000 s: ProgressBarCallbackTest
5.565 s: StoreBestCoordinatesCallbackTest
0.500 s: TimerStopCallbackTest
0.000 s: ProgressBarCallbackNoMaxIterationsTest
0.000 s: ProgressBarCallbackNoMaxIterationsEpochTest
0.000 s: ProgressBarCallbackEpochTest
0.031 s: ReportCallbackTest
0.001 s: GradClipByNormCallbackTest
0.000 s: GradClipByValueCallbackTest
0.323 s: PreCalcCDTest
0.009 s: DisjointFeatureTest
0.008 s: DisjointFeatureFMatTest
0.019 s: DisjointFeatureSpMatTest
0.000 s: GreedyDescentTest
0.000 s: CyclicDescentTest
0.000 s: RandomDescentTest
0.000 s: LogisticRegressionFunctionPartialGradientTest
0.006 s: SoftmaxRegressionFunctionPartialGradientTest
0.359 s: CMAESLogisticRegressionTest
0.340 s: ApproxCMAESLogisticRegressionTest
0.309 s: CMAESLogisticRegressionFMatTest
0.129 s: ApproxCMAESLogisticRegressionFMatTest
0.127 s: ApproxCMAESEmptyTransformationLogisticRegressionFMatTest
6.506 s: CNELogisticRegressionTest
7.935 s: CNELogisticRegressionFMatTest
2.408 s: CNECrossInTrayFunctionTest
2.256 s: CNEAckleyFunctionTest
2.307 s: CNEBealeFunctionTest
2.520 s: CNEGoldsteinPriceFunctionTest
2.724 s: CNELevyFunctionN13Test
0.014 s: CNEHimmelblauFunctionTest
2.416 s: CNEThreeHumpCamelFunctionTest
2.725 s: CNESchafferFunctionN4Test
2.742 s: CNESchafferFunctionN2Test
0.288 s: DELogisticRegressionTest
0.476 s: DELogisticRegressionFMatTest
0.034 s: DemonAdamLogisticRegressionTest
0.000 s: DemonAdamSphereFunctionTest
0.000 s: DemonAdamMatyasFunctionTest
0.003 s: DemonAdamSphereFunctionTestFloat
0.000 s: DemonAdamMatyasFunctionTestFloat
0.034 s: DemonAdaMaxLogisticRegressionTest
0.050 s: DemonSGDLogisticRegressionTest
0.002 s: DemonSGDSimpleTestFunctionFloat
1.467 s: EveLogisticRegressionTest
0.007 s: EveSphereFunctionTest
0.009 s: EveStyblinskiTangFunctionTest
0.007 s: EveStyblinskiTangFunctionFMatTest
0.125 s: EveStyblinskiTangFunctionSpMatTest
0.005 s: FWOMPTest
0.000 s: FWRegularizedOMP
0.000 s: FWPruneSupportOMP
0.000 s: FWAtomNormConstraint
0.094 s: ClassicFW
0.088 s: ClassicFWFMat
0.000 s: FWLineSearch
0.142 s: FWLineSearchFMat
0.339 s: FTMLLogisticRegressionTest
0.130 s: FTMLSphereFunctionTest
0.087 s: FTMLStyblinskiTangFunctionTest
0.082 s: FTMLStyblinskiTangFunctionFMatTest
0.000 s: AddEvaluateWithGradientEmptyTest
0.000 s: AddEvaluateWithGradientEvaluateOnlyTest
0.000 s: AddEvaluateWithGradientGradientOnlyTest
0.000 s: AddEvaluateWithGradientBothTest
0.000 s: AddEvaluateWithGradientEvaluateWithGradientTest
0.000 s: AddEvaluateWithGradientAllThreeTest
0.000 s: LogisticRegressionEvaluateWithGradientTest
0.000 s: SDPTest
0.000 s: AddSeparableEvaluateWithGradientEmptyTest
0.000 s: AddSeparableEvaluateWithGradientEvaluateOnlyTest
0.000 s: AddSeparableEvaluateWithGradientGradientOnlyTest
0.000 s: AddSeparableEvaluateWithGradientBothTest
0.000 s: AddSeparableEvaluateWGradientEvaluateWithGradientTest
0.000 s: AddSeparableEvaluateWithGradientAllThreeTest
0.000 s: AddEvaluateWithGradientMixedTypesTest
0.000 s: AddEvaluateWithGradientMixedTypesStaticTest
0.000 s: SeparableFunctionTypeCheckTest
0.000 s: LagrangianFunctionTypeCheckTest
0.000 s: SparseFunctionTypeCheckTest
0.000 s: ResolvableFunctionTypeCheckTest
0.000 s: SimpleGDTestFunction
0.009 s: GDRosenbrockTest
0.005 s: GDRosenbrockFMatTest
0.000 s: GridSearchTest
0.000 s: GridSearchFMatTest
0.000 s: GridSearchIMatTest
0.153 s: IQNLogisticRegressionTest
0.236 s: IQNLogisticRegressionFMatTest
0.508 s: KatyushaLogisticRegressionTest
0.511 s: KatyushaProximalLogisticRegressionTest
0.506 s: KatyushaLogisticRegressionFMatTest
0.509 s: KatyushaProximalLogisticRegressionFMatTest
21.386 s: KatyushaLogisticRegressionSpMatTest
21.411 s: KatyushaProximalLogisticRegressionSpMatTest
0.001 s: RosenbrockFunctionTest
0.000 s: RosenbrockFunctionFloatTest
0.003 s: RosenbrockFunctionSpGradTest
0.003 s: RosenbrockFunctionSpMatTest
0.001 s: ColvilleFunctionTest
0.001 s: WoodFunctionTest
0.899 s: GeneralizedRosenbrockFunctionTest
0.003 s: RosenbrockWoodFunctionTest
0.000 s: FuncFWTest
0.000 s: FuncFWFMatTest
0.001 s: LookaheadAdamSphereFunctionTest
0.001 s: LookaheadAdaGradSphereFunction
0.350 s: LookaheadAdamLogisticRegressionTest
0.013 s: LookaheadAdamSimpleSphereFunctionFloat
15.637 s: Johnson844LovaszThetaSDP
4.718 s: Johnson844LovaszThetaFMatSDP
24.056 s: ErdosRenyiRandomGraphMaxCutSDP
31.469 s: GaussianMatrixSensingSDP
4.195 s: MOEADSchafferN1DoubleTest
4.273 s: MOEADSchafferN1TestVectorDoubleBounds
4.330 s: MOEADFonsecaFlemingDoubleTest
4.387 s: MOEADFonsecaFlemingTestVectorDoubleBounds
8.344 s: MOEADSchafferN1FloatTest
4.157 s: MOEADSchafferN1TestVectorFloatBounds
4.114 s: MOEADFonsecaFlemingFloatTest
4.128 s: MOEADFonsecaFlemingTestVectorFloatBounds
3.163 s: MOEADZDTONETest
6.515 s: MOEADDIRICHLETZDT3Test
4.070 s: MomentumSGDSpeedUpTestFunction
5.702 s: MomentumSGDGeneralizedRosenbrockTest
21.032 s: MomentumSGDGeneralizedRosenbrockFMatTest
110.026 s: MomentumSGDGeneralizedRosenbrockSpMatTest
1.461 s: NesterovMomentumSGDSpeedUpTestFunction
7.580 s: NesterovMomentumSGDGeneralizedRosenbrockTest
2.943 s: NesterovMomentumSGDGeneralizedRosenbrockFMatTest
202.424 s: NesterovMomentumSGDGeneralizedRosenbrockSpMatTest
0.255 s: NSGA2SchafferN1DoubleTest
0.242 s: NSGA2SchafferN1TestVectorDoubleBounds
0.262 s: NSGA2FonsecaFlemingDoubleTest
0.261 s: NSGA2FonsecaFlemingTestVectorDoubleBounds
0.250 s: NSGA2SchafferN1FloatTest
0.281 s: NSGA2SchafferN1TestVectorFloatBounds
0.267 s: NSGA2FonsecaFlemingFloatTest
0.274 s: NSGA2FonsecaFlemingTestVectorFloatBounds
13.165 s: NSGA2ZDTONETest
0.241 s: NSGA2FrontTest
0.000 s: ExponentialBackoffDecayTest
0.008 s: ProjectToL1
0.053 s: ProjectToL0
0.089 s: LBestPSOSphereFunctionTest
0.083 s: LBestPSOSphereFunctionFMatTest
5.262 s: LBestPSORosenbrockTest
7.730 s: LBestPSORosenbrockFMatTest
7.671 s: LBestPSORosenbrockDoubleTest
11.121 s: LBestPSOCrossInTrayFunctionTest
0.102 s: LBestPSOAckleyFunctionTest
0.085 s: LBestPSOBealeFunctionTest
0.907 s: LBestPSOGoldsteinPriceFunctionTest
0.085 s: LBestPSOLevyFunctionN13Test
0.068 s: LBestPSOHimmelblauFunctionTest
0.081 s: LBestPSOThreeHumpCamelFunctionTest
0.606 s: LBestPSOSchafferFunctionN2Test
0.005 s: QHSphereFunction
0.005 s: QHSphereFunctionFMat
0.201 s: QHSpMatTestSphereFunction
12.509 s: QHSGDSGDGeneralizedRosenbrockTest
0.117 s: RMSPropLogisticRegressionTest
0.113 s: RMSPropLogisticRegressionFMatTest
6.634 s: RMSPropLogisticRegressionSpMatTest
0.250 s: SAGeneralizedRosenbrockTest
0.216 s: SARosenbrockTest
0.054 s: SARosenbrockFMatTest
0.030 s: RastrigrinFunctionTest
0.764 s: SARAHLogisticRegressionTest
0.762 s: SARAHPlusLogisticRegressionTest
0.758 s: SARAHLogisticRegressionFMatTest
0.760 s: SARAHPlusLogisticRegressionFMatTest
34.339 s: SARAHLogisticRegressionSpMatTest
34.473 s: SARAHPlusLogisticRegressionSpMatTest
0.116 s: SmallMaxCutSdp
152.999 s: DeprecatedSmallLovaszThetaSdp
162.812 s: SmallLovaszThetaSdp
0.563 s: LogChebychevApproxSdp
0.256 s: CorrelationCoeffToySdp
0.027 s: SGDRCyclicalResetTest
0.314 s: SGDRLogisticRegressionTest
0.304 s: SGDRLogisticRegressionFMatTest
7.511 s: SGDRLogisticRegressionSpMatTest
5.434 s: GeneralizedRosenbrockTest
3.886 s: GeneralizedRosenbrockTestFloat
0.117 s: SMORMS3LogisticRegressionTest
0.117 s: SMORMS3LogisticRegressionFMatTest
0.017 s: SnapshotEnsemblesResetTest
0.311 s: SnapshotEnsemblesLogisticRegressionTest
0.297 s: SnapshotEnsemblesLogisticRegressionFMatTest
7.646 s: SnapshotEnsemblesLogisticRegressionSpMatTest
0.135 s: LogisticRegressionTest
0.132 s: LogisticRegressionFMatTest
0.153 s: SPSASphereFunctionTest
0.127 s: SPSASphereFunctionFMatTest
1.534 s: SPSASphereFunctionSpMatTest
0.130 s: SPSAMatyasFunctionTest
2.122 s: SPSALogisticRegressionTest
1.338 s: SVRGLogisticRegressionTest
1.376 s: SVRGBBLogisticRegressionTest
1.336 s: SVRGLogisticRegressionFMatTest
1.327 s: SVRGBBLogisticRegressionFMatTest
61.019 s: SVRGLogisticRegressionSpMatTest
61.084 s: SVRGBBLogisticRegressionSpMatTest
0.614 s: SWATSLogisticRegressionTestFunction
0.076 s: SWATSSphereFunctionTest
0.110 s: SWATSStyblinskiTangFunctionTest
0.048 s: SWATSStyblinskiTangFunctionFMatTest
0.841 s: SWATSStyblinskiTangFunctionSpMatTest
1.260 s: WNGradLogisticRegressionTest
0.002 s: WNGradSphereFunctionTest
0.023 s: WNGradStyblinskiTangFunctionTest
0.012 s: WNGradStyblinskiTangFunctionFMatTest
0.146 s: WNGradStyblinskiTangFunctionSpMatTest
0.000 s: YogiSphereFunctionTest
0.000 s: YogiSphereFunctionTestFMat
0.000 s: YogiMcCormickFunctionTest
0.117 s: YogiLogisticRegressionTest
0.116 s: YogiLogisticRegressionFMatTest
===============================================================================
All tests passed (12589 assertions in 320 test cases)

So yeah, PowerPC is all good :)

Awesome, thanks for diving deeper into the issue.

@zoq I gonna close this one, since the issue is not on ensmallen side, and I have fixed it for Macports.
Sorry for a hassle, but maybe it helps someone later who gonna try this without Macports.