7188176: The JVM should differentiate between T and M series and adjust GC ergonomics
Reviewed-by: kvn
Contributed-by: Tao Mao <tao.mao@oracle.com>
--- a/hotspot/src/cpu/sparc/vm/vm_version_sparc.cpp Thu Sep 20 16:49:17 2012 +0200
+++ b/hotspot/src/cpu/sparc/vm/vm_version_sparc.cpp Mon Sep 24 11:07:03 2012 -0700
@@ -339,7 +339,11 @@
unsigned int VM_Version::calc_parallel_worker_threads() {
unsigned int result;
- if (is_niagara_plus()) {
+ if (is_M_series()) {
+ // for now, use same gc thread calculation for M-series as for niagara-plus
+ // in future, we may want to tweak parameters for nof_parallel_worker_thread
+ result = nof_parallel_worker_threads(5, 16, 8);
+ } else if (is_niagara_plus()) {
result = nof_parallel_worker_threads(5, 16, 8);
} else {
result = nof_parallel_worker_threads(5, 8, 8);
--- a/hotspot/src/cpu/sparc/vm/vm_version_sparc.hpp Thu Sep 20 16:49:17 2012 +0200
+++ b/hotspot/src/cpu/sparc/vm/vm_version_sparc.hpp Mon Sep 24 11:07:03 2012 -0700
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -124,6 +124,8 @@
// Returns true if the platform is in the niagara line (T series)
// and newer than the niagara1.
static bool is_niagara_plus() { return is_T_family(_features) && !is_T1_model(_features); }
+
+ static bool is_M_series() { return is_M_family(_features); }
static bool is_T4() { return is_T_family(_features) && has_cbcond(); }
// Fujitsu SPARC64