Abstract
Java workloads are becoming more prominent on a wide range of computing devices. In contrast to so-called traditional workloads written in C and Fortran, Java workloads are object-oriented and comprise a virtual machine. The latter includes a runtime environment with garbage collection, Just-In-Time (JIT) compilation, etc. As such, Java workloads potentially have different execution characteristics from traditional C or Fortran workloads. In this paper, we make a thorough comparison between SPEC CPU and Java workloads using statistical data analysis techniques and performance counters on an AMD Duron platform. In our experimental setup we use four virtual machines for the Java workloads running SPECjvm98, SPECjbb2000 and Java Grande. Our main conclusion is that Java workloads are significantly different from SPEC CPU and that the execution characteristics for which Java workloads differ from SPEC CPU, is subjective to the virtual machine; we can make a distinction between mixed-mode and compilation-only virtual machines.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Chow, K., Wright, A., Lai, K.: Characterization of Java workloads by principal components analysis and indirect branches. In: Proceedings of the Workshop on Workload Characterization (WWC-1998), held in conjunction with the 31st Annual ACM/IEEE International Symposium on Microarchitecture (MICRO-31), November 1998, pp. 11–19 (1998)
Desikan, R., Burger, D., Keckler, S.W.: Measuring experimental error in microprocessor simulation. In: Proceedings of the 28th Annual International Symposium on Computer Architecture (ISCA-28), July 2001, pp. 266–277 (2001)
Diefendorff, K.: K7 challenges Intel. Microprocessor Report, 12(14) (October 1998)
Eeckhout, L., Georges, A., De Bosschere, K.: How Java programs interact with virtual machines at the microarchitectural level. In: Proceedings of the ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA) 2003, October 2003, pp. 169–186 (2003)
Eeckhout, L., Vandierendonck, H., De Bosschere, K.: Designing computer architecture research workloads. IEEE Computer 36(2), 65–71 (2003)
Eeckhout, L., Vandierendonck, H., De Bosschere, K.: Quantifying the impact of input data sets on program behavior and its applications. Journal of Instruction-Level Parallelism 5, 1–33 (2003)
Hsieh, C.A., Conte, M.T., Johnson, T.L., Gyllenhaal, J.C., Hwu, W.W.: A study of the cache and branch performance issues with running Java on current hardware platforms. In: Proceedings of the 42nd IEEE International Computer Conference (COMPCON 1997), February, pp. 211–216 (1997)
Johnson, R.A., Wichern, D.W.: Applied Multivariate Statistical Analysis, 5th edn. Prentice Hall, Englewood Cliffs (2002)
Li, T., Bhargava, R., John, L.: Rehashable btb: an adaptive branch target buffer to improve the target predictability of java code. In: Proceedings of the International Conference on High Performance Computing (HiPC), pp. 597–608 (2002)
Li, T., Hu, S., Luo, Y., John, L., Vijaykrishnan, N.: Understanding control flow transfer and its predictability in Java processing. In: Proceedings of the IEEE International Symposium on Performance Analysis of Systems and Software, pp. 65–76 (2001)
Li, T., John, L.K., Narayanan, V., Sivasubramaniam, A., Sabarinathan, J., Murthy, A.: Using complete system simulation to characterize SPECjvm98 benchmarks. In: Proceedings of the 14th International Conference on Supercomputing (ICS-2000), May 2000, pp. 22–33 (2000)
Phansalkar, A., Joshi, A., Eeckhout, L., John, L.: Measuring program similarity: Experiments with spec cpu benchmark suites. In: Proceedings of the 2005 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS 2005), pp. 10–20. IEEE, Los Alamitos (2005)
Radhakrishnan, R., Vijaykrishnan, N., John, L.K., Sivasubramaniam, A., Rubio, J., Sabarinathan, J.: Java runtime systems: Characterization and architectural implications. IEEE Transactions on Computers 50(2), 131–145 (2001)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Georges, A., Eeckhout, L., De Bosschere, K. (2005). Comparing Low-Level Behavior of SPEC CPU and Java Workloads. In: Srikanthan, T., Xue, J., Chang, CH. (eds) Advances in Computer Systems Architecture. ACSAC 2005. Lecture Notes in Computer Science, vol 3740. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11572961_54
Download citation
DOI: https://doi.org/10.1007/11572961_54
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-29643-0
Online ISBN: 978-3-540-32108-8
eBook Packages: Computer ScienceComputer Science (R0)