Replies: 3 comments 3 replies
-
I have moved the BLAS and LAPACK functions to a LinearAlgebra repository. I think it makes the most sense to have that be separate from cpgfunction, and define it in third_party. My plan is to remove all BLAS and LAPACK calls to work through the LinearAlgebra library.
|
Beta Was this translation helpful? Give feedback.
-
I’m going to look into removing the FORTRAN dependency this weekend by running some timing tests using BLAS++ and LAPACK++. If that works it would hit two birds with one stone:
|
Beta Was this translation helpful? Give feedback.
-
Here's a couple of interesting notes regarding this thread:
|
Beta Was this translation helpful? Give feedback.
-
cpgfunction is relying on some dependant functions that could possibly be eliminated.
nlohmann json - cpgfunction is currently configured as a library, so this dependency should not be needed in the library portion of the code. If it's to be used as a standalone application, then you will need some sort of input processing. We should probably make the distinction between library and application more clear and getting this dependency in the right place will help with that. Beyond that, the input structure in the input JSON files appear to be like this:
{"x": [1, 2, 3, 4], "y": [1, 2, 3, 4]}
. This is basically just csv data. If that's all the input is, we could probably just move to a CSV input format and not have to carry around a separate copy of nlohmann json. That would be faster and eliminate this dependency.dcopy_
- is this just copying one vector to another? This could be done with standard C++ code. If you want to roll your own version, called "dcopy", fine, but if that's all it is, it would be better to write your own.dot
- this looks like a dot product, but I'm not seeing it used. You have a_dot_product
lambda function inheat_transfer.cpp
, but that doesn't use the LA function. If it's not used, it should be eliminated.gemv
- is this used outside of a test? I don't see it in the cpgfunction core source code.I might update with others as I get further into the code.
Beta Was this translation helpful? Give feedback.
All reactions