Future Development - ActivitySim/activitysim GitHub Wiki

This page maintains the discussion around future development for the ActivitySim platform. In addition to the scoping documents for future work phases, additional potential future development may also be found in the Issues.

The Scoping Exercise includes background information on potential future work items, descriptions, cost estimates, and prioritization to inform future phases of work.


Phase 8

Task X. ActivitySim Memory Use Profile and Testing

The purpose of this task is to develop a detailed profile of ActivitySim memory usage, in order to inform potential future ActivitySim development efforts. The profile will be developed using three “full-scale” ActivitySim examples, with chunking disabled, executed on the same computing resource. Using the performance profiling tools already developed and implemented as part of the ActivitySim project, the profile will provide detailed information about all types of memory usage throughout a full model run. The profile will include information about the data tables and data types in use throughout the model run, and will identify the sources of changes in in memory usage during the run. The profile will also document any other memory usage-relevant information characterizing each test example, such as type, number, and size of network skims, the number of MAZs or TAZs, and the size of the synthetic population. Detailed quantitative and qualitative findings from the profile will be documented in a technical memo. This memo will also identify potential practical recommendations of strategies for how memory usage may be reduced in the near term. If feasible, the memo may include the results of any sensitivity tests of these strategies, and an assessment of their efficacy.

Deliverables:

  • Memo documenting ActivitySim memory usage profile for three examples, including recommendations of near-term strategies, and results of any tests.