{"title":"Java dynamic LVT optimization","authors":"Danny Mace, H. C. Grossman","doi":"10.1145/2817460.2817518","DOIUrl":null,"url":null,"abstract":"Java offers programmers three variable classes, local variables, instance variables, and constants. We compare the performance characteristics of each of these variable types with focus on local variables and the Local Variable Table (LVT). The LVT is an array containing the values of local variables and parameters for each code block. We demonstrate that when local variables are stored in the first four entries of the LVT, instructions using those variables execute quicker. In order to exploit these performance benefits, we present a modified Sun Java compiler to optimize the LVT using a most frequently used (MFU) ordering. By ordering the LVT, we achieve speedups of traditional benchmark programs.","PeriodicalId":274966,"journal":{"name":"ACM-SE 35","volume":"7 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1997-04-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"ACM-SE 35","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2817460.2817518","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
Java offers programmers three variable classes, local variables, instance variables, and constants. We compare the performance characteristics of each of these variable types with focus on local variables and the Local Variable Table (LVT). The LVT is an array containing the values of local variables and parameters for each code block. We demonstrate that when local variables are stored in the first four entries of the LVT, instructions using those variables execute quicker. In order to exploit these performance benefits, we present a modified Sun Java compiler to optimize the LVT using a most frequently used (MFU) ordering. By ordering the LVT, we achieve speedups of traditional benchmark programs.