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

Cleanup #61

merged 57 commits into from May 2, 2017


None yet
1 participant
Copy link

henryiii commented Apr 21, 2017

GooFit cleanup, consisting of:

  • Using standard terminology consistently for CUDA (closes #57)
  • Removing the fakecuda directory and hacks associated with it
  • Removing devcomplex, and moving to using thrust::complex everywhere (closes #58)
  • Removing using namespace std from all header files
  • Use #pragma once in all headers
  • Removing includes from header files, using forward declarations instead, and includes in src: Faster compilation, especially for PDFs
  • Removing many warnings about initialization order, using C++11 style in more places
  • Use Arch 3.5+ features through the compiler, allowing mixed targets, removed flag
  • Expand __ldg to support non-intrinsics, using generics mini-library
  • Dropping many of the odd help print defines that were untested and often invalid
  • Removing the ALL_CAPS math defines; CUDA already selects the correct one for float/double
  • Several classes moved to header (Variable, FitControl)
  • Use submodules instead of DownloadProject, automated in CMake, moved libraries to /extern
  • Examples now give an error if the fit fails (FitManager can be used as int or bool), better logs for
  • Removed a couple of headers for root stuff that managed to survive
  • Added warnings to --goofit-details if optimizations are missed, added better optimization for host code on CUDA
  • Made dependency on rang simpler, GooFit::red == rang::fg::red
  • Unrecommended, but in-source builds are supported again

scripts/ knows about most of the new changes and can assist in converting old code.


This comment has been minimized.

Copy link

codecov bot commented Apr 21, 2017

Codecov Report

Merging #61 into master will increase coverage by 1.28%.
The diff coverage is 60.43%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master      #61      +/-   ##
+ Coverage   46.89%   48.17%   +1.28%     
  Files          24       23       -1     
  Lines        1126     1098      -28     
  Branches      144      145       +1     
+ Hits          528      529       +1     
+ Misses        598      569      -29
Impacted Files Coverage Δ
include/goofit/PDFs/GooPdf.h 40% <ø> (ø) ⬆️
include/goofit/fitting/FitManagerMinuit2.h 100% <ø> (ø) ⬆️
include/goofit/BinnedDataSet.h 0% <ø> (ø) ⬆️
include/goofit/PdfBase.h 70.58% <ø> (ø) ⬆️
include/goofit/UnbinnedDataSet.h 100% <ø> (ø) ⬆️
include/goofit/DataSet.h 66.66% <0%> (+6.66%) ⬆️
src/goofit/ 0.78% <0%> (ø) ⬆️
include/goofit/GlobalCudaDefines.h 100% <100%> (ø)
src/PDFs/ 100% <100%> (+3.44%) ⬆️
src/PDFs/ 71.42% <100%> (ø) ⬆️
... and 12 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update a108c9c...1d24479. Read the comment docs.

@henryiii henryiii changed the title [WIP] Cleanup Cleanup Apr 27, 2017


This comment has been minimized.

Copy link

henryiii commented Apr 27, 2017

Ready for review. @galapaegos, @hassec ?

@henryiii henryiii merged commit cd3114f into master May 2, 2017

4 checks passed

codecov/patch 60.43% of diff hit (target 46.89%)
codecov/project 48.17% (+1.28%) compared to a108c9c
continuous-integration/travis-ci/pr The Travis CI build passed
continuous-integration/travis-ci/push The Travis CI build passed

@henryiii henryiii deleted the cleanup branch May 2, 2017

@henryiii henryiii modified the milestone: V 2.0 Jun 8, 2017

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