Task #5818
closedIdentify log-jams in use-case source code
100%
Description
For ICES Stock Assessment:
1) Identify specific log-jams in the use-case source code and identify functions (here, referred to as base functions) that can be modified to be more computationally efficient and alleviate the log-jams.
#1768 and #5517 both use optimization routines that run in serial.
#1768: uses FLCore::fmle() https://github.com/slarge/fmle_bb
#5517: uses a genetic algorithm: ga()
Updated by Scott Large over 8 years ago
- Status changed from New to Closed
- % Done changed from 0 to 100
Explored several examples of stock assessment code to identify specific log-jams (i.e., slow code, poor optimization routines, etc) in the code that could be optimized using e-infrastructure resources. Several log-jams were identified and the source code was explored. Most problems could likely be sped up efficiently using C++ (with R package RCpp), TMB (Template Model Builder), or vectorizing R code. I was not able to identify a single instance that would benefit from parallelization - further, parallelizing some of the code would be a massive undertaking. For most uses, the greatest advantage of the e-infrastructure will be in the data delivery, collaborative research, and perhaps the cloud computing should be viewed more as a side benefit rather than an objective.