Preview

Vestnik NSU. Series: Information Technologies

Advanced search

DEVELOPMENT AND IMPLEMENTATION OF MEMORY DISAMBIGUATION ALGORITHMS IN DYNAMIC JAVA COMPILER FOR ELBRUS PROCESSOR

https://doi.org/10.25205/1818-7900-2018-16-2-78-85

Abstract

This article describes algorithms for memory disambiguation in dynamic Java compiler for Russian processor Elbrus with their implementation. These algorithms let significantly improve possibilities for instruction scheduler which is a key optimization for VLIW-processors. Static and dynamic approaches for memory disambiguation are described in this work. All implemented algorithms' efficiency is shown based on popular testing suite SpecJVM2008.

About the Author

A. E. Malykh
Novosibirsk State University; UNIPRO Ltd
Russian Federation


References

1. Андреенко С. А. Межблоковое планирование инструкций в динамическом компиляторе java для VLIW-процессора. Новосибирск, 2016. Ghosh, Soumyadeep, Yongjun Park, and Arun Raman. Enabling efficient alias speculation // ACM SIGPLAN Notices. 2015. Vol. 50. No. 5.

2. Paleczny M., Vick C., Click C. The Java HotSpot Server Compiler, Sun Microsystems // Java Virtual Machine Researchand Technology Symposium (JVM '01), 2001. Микросхема интегральная 1891ВМ7Я (Система команд): Руководство программиста. ТВГИ.00742-01 33 01-1. Ч. 1.

3. Общие сведения. Hwu, Wen-Mei W. et al. The superblock: an effective technique for VLIW and superscalar compilation // Instruction-Level Parallelism. Springer, Boston, MA, 1993. Р. 229-248.

4. Mahlke, Scott A. et al. Effective compiler support for predicated execution using the hyperblock // ACM SIGMICRO Newsletter. IEEE Computer Society Press, 1992. Vol. 23. No. 1-2.

5. Faraboschi P., Fisher J. A., Young C. Instruction scheduling for instruction level parallel processors // Proceedings of the IEEE. 2001. Vol. 89.11. Р. 1638-1659.

6. Yang T., Gerasoulis A. List scheduling with and without communication delays // Parallel Computing. 1993. Vol. 19.12. P. 1321-1344.

7. Huang A. S., Slavenburg G., Shen J. P. Speculative disambiguation: A compilation technique for dynamic memory disambiguation // ACM SIGARCH Computer Architecture News. IEEE Computer Society Press, 1994. Vol. 22. No. 2.

8. Maalej M. et al. Pointer disambiguation via strict inequalities // Proceedings of the 2017 International Symposium on Code Generation and Optimization. IEEE Press, 2017.

9. Shpeisman T., Lueh G.-Y., Adl-Tabatabai A-R. Just-in-time Java compilation for the Itanium/spl reg/processor // Parallel Architectures and Compilation Techniques. Proceedings International Conference. IEEE, 2002.

10. Péricles A. et al. Runtime pointer disambiguation // ACM SIGPLAN Notices. 2015. Vol. 50. No. 10.

11. Gallagher D., Chen W., Mahlke S., Gyllenhaal J., Hwu W. Dynamic Memory Disambiguation Using the Memory ConflictBuffer // ASPLOS-VI Proceedings. Center for Reliable and High-Performance Computing, University of Illinois, 1994.


Review

For citations:


Malykh A.E. DEVELOPMENT AND IMPLEMENTATION OF MEMORY DISAMBIGUATION ALGORITHMS IN DYNAMIC JAVA COMPILER FOR ELBRUS PROCESSOR. Vestnik NSU. Series: Information Technologies. 2018;16(2):78-85. (In Russ.) https://doi.org/10.25205/1818-7900-2018-16-2-78-85

Views: 49


Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 License.


ISSN 1818-7900 (Print)
ISSN 2410-0420 (Online)