Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CLANG_X] Loop not vectorized in MkFit #43886

Closed
iarspider opened this issue Feb 7, 2024 · 7 comments · Fixed by trackreco/cmssw#143 or #43915
Closed

[CLANG_X] Loop not vectorized in MkFit #43886

iarspider opened this issue Feb 7, 2024 · 7 comments · Fixed by trackreco/cmssw#143 or #43915

Comments

@iarspider
Copy link
Contributor

Full log: link

>> Compiling (...)/cms/cmssw/CMSSW_14_1_CLANG_X_2024-02-06-2300/src/RecoTracker/MkFitCore/src/radix_sort.cc
/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc12/external/llvm/17.0.3-58617194c079c8f35fd2aa0eeb9674ef/bin/clang++ -c -DGNU_GCC -D_GNU_SOURCE -DTBB_USE_GLIBCXX_VERSION=120301 -DTBB_SUPPRESS_DEPRECATED_MESSAGES -DTBB_PREVIEW_RESUMABLE_TASKS=1 -DTBB_PREVIEW_TASK_GROUP_EXTENSIONS=1 -DCMSSW_GIT_HASH='CMSSW_14_1_CLANG_X_2024-02-06-2300' -DPROJECT_NAME='CMSSW' -DPROJECT_VERSION='CMSSW_14_1_CLANG_X_2024-02-06-2300' -I/data/cmsbld/jenkins/workspace/build-any-ib/w/tmp/BUILDROOT/4653e4858633c7925b084632648ff40c/opt/cmssw/el8_amd64_gcc12/cms/cmssw/CMSSW_14_1_CLANG_X_2024-02-06-2300/src -I/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc12/external/pcre/8.43-37eb2e8b73bab83d6645ecfd5d73dcaa/include -I/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc12/external/bz2lib/1.0.6-d065ccd79984efc6d4660f410e4c81de/include -isystem/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc12/lcg/root/6.30.05-0bda4ba0a0084b1b4c83e4b8f805f59c/include -isystem/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc12/external/tbb/v2021.9.0-5109e373398eaf79a8268d6a86a2f6e2/include -I/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc12/cms/vdt/0.4.3-5a80085534117eaccb28e669c6da4b6f/include -I/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc12/external/xz/5.2.5-6f3f49b07db84e10c9be594a1176c114/include -I/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc12/external/zlib/1.2.11-51072030b7f93c3ac6c4235f21e413cb/include -I/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc12/external/json/3.11.3-2540d984125d8aab890b619b66fd01ff/include -O2 -pthread -pipe -Werror=main -Werror=pointer-arith -Werror=overlength-strings -Wno-vla -Werror=overflow -std=c++17 -ftree-vectorize -Werror=array-bounds -Werror=type-limits -fvisibility-inlines-hidden -fno-math-errno --param vect-max-version-for-alias-checks=50 -Xassembler --compress-debug-sections -Wno-error=array-bounds -Warray-bounds -fuse-ld=bfd -msse3 -felide-constructors -fmessage-length=0 -Wall -Wno-long-long -Wreturn-type -Wextra -Wpessimizing-move -Wclass-memaccess -Wno-cast-function-type -Wno-unused-but-set-parameter -Wno-ignored-qualifiers -Wno-unused-parameter -Wunused -Wparentheses -Werror=return-type -Werror=missing-braces -Werror=unused-value -Werror=unused-label -Werror=address -Werror=format -Werror=sign-compare -Werror=write-strings -Werror=delete-non-virtual-dtor -Werror=strict-aliasing -Werror=narrowing -Werror=reorder -Werror=unused-variable -Werror=conversion-null -Wnon-virtual-dtor -Werror=switch -fdiagnostics-show-option -Wno-unused-local-typedefs -Wno-attributes -Wno-psabi -Wno-deprecated-copy -Wno-deprecated -Wno-c99-extensions -Wno-c++11-narrowing -D__STRICT_ANSI__ -Wno-unused-private-field -Wno-unknown-pragmas -Wno-unused-command-line-argument -Wno-unknown-warning-option -ftemplate-depth=512 -Wno-error=potentially-evaluated-expression -Wno-tautological-type-limit-compare -fsized-deallocation --gcc-toolchain=/data/cmsbld/jenkins/workspace/build-any-ib/w/el8_amd64_gcc12/external/gcc/12.3.1-40d504be6370b5a30e3947a6e575ca28 -Ofast -fno-reciprocal-math -mrecip=none -DBOOST_DISABLE_ASSERTS -fopenmp-simd -fPIC -MMD -MF tmp/el8_amd64_gcc12/src/RecoTracker/MkFitCore/src/RecoTrackerMkFitCore/radix_sort.cc.d /data/cmsbld/jenkins/workspace/build-any-ib/w/tmp/BUILDROOT/4653e4858633c7925b084632648ff40c/opt/cmssw/el8_amd64_gcc12/cms/cmssw/CMSSW_14_1_CLANG_X_2024-02-06-2300/src/RecoTracker/MkFitCore/src/radix_sort.cc -o tmp/el8_amd64_gcc12/src/RecoTracker/MkFitCore/src/RecoTrackerMkFitCore/radix_sort.cc.o
  (...)/cms/cmssw/CMSSW_14_1_CLANG_X_2024-02-06-2300/src/RecoTracker/MkFitCore/src/PropagationMPlex.cc:1086:8: warning: loop not vectorized: the optimizer was unable to perform the requested transformation; the transformation might be disabled or specified as part of an unsupported transformation ordering [-Wpass-failed=transform-warning]
  1086 |   void propagateHelixToPlaneMPlex(const MPlexLS& inErr,
      |        ^
  (...)/cms/cmssw/CMSSW_14_1_CLANG_X_2024-02-06-2300/src/RecoTracker/MkFitCore/src/PropagationMPlex.cc:1086:8: warning: loop not vectorized: the optimizer was unable to perform the requested transformation; the transformation might be disabled or specified as part of an unsupported transformation ordering [-Wpass-failed=transform-warning]
 2 warnings generated.
@cmsbuild
Copy link
Contributor

cmsbuild commented Feb 7, 2024

cms-bot internal usage

@cmsbuild
Copy link
Contributor

cmsbuild commented Feb 7, 2024

A new Issue was created by @iarspider .

@antoniovilela, @rappoccio, @Dr15Jones, @sextonkennedy, @makortel, @smuzaffar can you please review it and eventually sign/assign? Thanks.

cms-bot commands are listed here

@iarspider
Copy link
Contributor Author

assign RecoTracker/MkFitCore

@cmsbuild
Copy link
Contributor

cmsbuild commented Feb 7, 2024

New categories assigned: reconstruction

@jfernan2,@mandrenguyen you have been requested to review this Pull request/Issue and eventually sign? Thanks

@iarspider
Copy link
Contributor Author

@dan131riley it seems that the fix in #43725 was not enough?

@slava77
Copy link
Contributor

slava77 commented Feb 7, 2024

pointer to

1086 |   void propagateHelixToPlaneMPlex(

is not very helpful in the context of "loop is not vectorized" message.
Is there a way to point to the actual code with the loop?

This seems more connected to #41730 (and the discussion in #41624 ).
It looks like we may need to add more #if !defined(__clang__) around #pragma omp simd

@dan131riley
Copy link

This is caused by changes introduced in #43146. Compiling with "-g" resolves where the problems are--I'm looking at whether those loops vectorize (or should vectorize) with the various compilers.

/mnt/data1/dsr/CMSSW_14_1_CLANG_X_2024-02-06-2300/src/RecoTracker/MkFitCore/src/PropagationMPlex.cc:231:1: warning: loop not vectorized: the optimizer was unable to perform the requested transformation; the transformation might be disabled or specified as part of an unsupported transformation ordering [-Wpass-failed=transform-warning]
  231 | #pragma omp simd
      | ^
/mnt/data1/dsr/CMSSW_14_1_CLANG_X_2024-02-06-2300/src/RecoTracker/MkFitCore/src/PropagationMPlex.cc:245:1: warning: loop not vectorized: the optimizer was unable to perform the requested transformation; the transformation might be disabled or specified as part of an unsupported transformation ordering [-Wpass-failed=transform-warning]
  245 | #pragma omp simd
      | ^
2 warnings generated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment