Advertisement

Footmark: A New Formulation for Working Set Statistics

  • Liang YuanEmail author
  • Wesley Smith
  • Sicong Fan
  • Zixu Chen
  • Chen Ding
  • Yunquan Zhang
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11882)

Abstract

The working set (WS) model pioneered by Denning and others is the foundation for analyzing memory performance and optimizing memory management. An important measure is the average working set size (WSS). In 1968, Denning derived a recursive formula to compute the average WSS. The Denning recursion was originally derived for infinitely long program executions and later adapted to use on finite length traces. All previous adaptations, however, have had to modify the Denning recursion for boundary correction.

This paper presents footmark, which redefines average WSS for finite length traces. It has three benefits. By definition, footmark satisfies a new type of symmetry. Mathematically, the paper gives four equivalent formulas for computing footmark including one that is identical to the Denning recursion. The mathematical simplicity is beneficial in both formal and practical analysis of working sets. Based on the new formulas, the paper proves a previously unknown equivalence relation between two working set definitions. Finally, the paper evaluates three WSS definitions using six test programs from the SPEC 2017 benchmark suite.

Keywords

Locality Footprint Working set 

Notes

Acknowledgement

The authors wish to thank Peter Denning for the feedback and suggestions on the presentation of the paper’s contributions and William Wilson for help on the use of the loca tool. The funding was provided in part by National Key R&D Program of China (2016YFB0200803) and NFSC (61432018, 61402441, 61521092, 61502450, 61602443), by the National Science Foundation of the United States (Contract No. CCF-1717877 and CCF-1629376), by an IBM CAS Faculty Fellowship, and by Guangdong Province Key Laboratory of Popular High Performance Computers (2017B030314073).

References

  1. 1.
    Loca: Program locality analysis tools (2018). https://github.com/dcompiler/loca
  2. 2.
    Brock, J., Ding, C., Lavaee, R., Liu, F., Yuan, L.: Prediction and bounds on shared cache demand from memory access interleaving. In: Proceedings of the International Symposium on Memory Management, pp. 96–108 (2018).  https://doi.org/10.1145/3210563.3210565. http://doi.acm.org/10.1145/3210563.3210565
  3. 3.
    Chen, D., Liu, F., Ding, C., Pai, S.: Locality analysis through static parallel sampling. In: Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 557–570 (2018).  https://doi.org/10.1145/3192366.3192402. http://doi.acm.org/10.1145/3192366.3192402
  4. 4.
    Coffman Jr., E.G., Denning, P.J.: Operating Systems Theory. Prentice-Hall, Englewood Cliffs (1973)Google Scholar
  5. 5.
    Denning, P.J.: Resource Allocation in Multiprocess Computer Systems. Ph.D. thesis, Massachusetts Institute of Technology (1968)Google Scholar
  6. 6.
    Denning, P.J.: The working set model for program behaviour. Commun. ACM 11(5), 323–333 (1968)MathSciNetCrossRefGoogle Scholar
  7. 7.
    Denning, P.J., Schwartz, S.C.: Properties of the working set model. Commun. ACM 15(3), 191–198 (1972)MathSciNetCrossRefGoogle Scholar
  8. 8.
    Denning, P.J., Slutz, D.R.: Generalized working sets for segment reference strings. Commun. ACM 21(9), 750–759 (1978)CrossRefGoogle Scholar
  9. 9.
    Ding, C., Chilimbi, T.: All-window profiling of concurrent executions. In: Proceedings of the ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (2008). Poster paperGoogle Scholar
  10. 10.
    Hu, X., et al.: Fast miss ratio curve modeling for storage cache. ACM Trans. Storage 14(2), 12:1–12:34 (2018).  https://doi.org/10.1145/3185751. http://doi.acm.org/10.1145/3185751CrossRefGoogle Scholar
  11. 11.
    Luk, C.K., et al.: Pin: building customized program analysis tools with dynamic instrumentation. In: Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 190–200 (2005)Google Scholar
  12. 12.
    Pan, C., Hu, X., Zhou, L., Luo, Y., Wang, X., Wang, Z.: PACE: penalty aware cache modeling with enhanced AET. In: 9th ACM SIGOPS Asia-Pacific Workshop on Systems (APSys 2018) (2018)Google Scholar
  13. 13.
    Slutz, D.R., Traiger, I.L.: A note on the calculation working set size. Commun. ACM 17(10), 563–565 (1974).  https://doi.org/10.1145/355620.361167. http://doi.acm.org/10.1145/355620.361167CrossRefzbMATHGoogle Scholar
  14. 14.
    Xiang, X., Bao, B., Ding, C., Gao, Y.: Linear-time modeling of program working set in shared cache. In: Proceedings of the International Conference on Parallel Architecture and Compilation Techniques, pp. 350–360 (2011)Google Scholar
  15. 15.
    Xiang, Y., Wang, X., Huang, Z., Wang, Z., Luo, Y., Wang, Z.: DCAPS: dynamic cache allocation with partial sharing. In: Proceedings of the EuroSys Conference, pp. 13:1–13:15 (2018).  https://doi.org/10.1145/3190508.3190511. http://doi.acm.org/10.1145/3190508.3190511
  16. 16.
    Yuan, L., Ding, C., Denning, P.J., Zhang, Y.: A measurement theory of locality. CoRR abs/1802.01254 (2018). http://arxiv.org/abs/1802.01254

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  • Liang Yuan
    • 1
    Email author
  • Wesley Smith
    • 2
  • Sicong Fan
    • 3
  • Zixu Chen
    • 3
  • Chen Ding
    • 3
  • Yunquan Zhang
    • 1
  1. 1.SKL of Computer Architecture, ICT, CASBeijingChina
  2. 2.University of EdinburghEdinburghUK
  3. 3.University of RochesterRochesterUSA

Personalised recommendations