diff -r d2be62fdfa50 -r 873fd82b133d src/share/vm/utilities/taskqueue.hpp --- a/src/share/vm/utilities/taskqueue.hpp Wed Jun 22 14:26:49 2016 +0800 +++ b/src/share/vm/utilities/taskqueue.hpp Fri Jun 24 17:12:13 2016 +0800 @@ -22,12 +22,6 @@ * */ -/* - * This file has been modified by Loongson Technology in 2015. These - * modifications are Copyright (c) 2015 Loongson Technology, and are made - * available on the same license terms set forth above. - */ - #ifndef SHARE_VM_UTILITIES_TASKQUEUE_HPP #define SHARE_VM_UTILITIES_TASKQUEUE_HPP @@ -594,34 +588,15 @@ template bool GenericTaskQueueSet::steal_best_of_2(uint queue_num, int* seed, E& t) { if (_n > 2) { - if(UseNUMASteal) { - uint i = 10; - uint k = queue_num; - while ((k == queue_num || (k - queue_num) > 3 || (queue_num - k) > 3) && i > 0) { - i--; - k = TaskQueueSetSuper::randomParkAndMiller(seed) % _n; - } - if(i > 0) { - return _queues[k]->pop_global(t); - } - else { - while (k == queue_num) { - k = TaskQueueSetSuper::randomParkAndMiller(seed) % _n; - } - return _queues[k]->pop_global(t); - } - } - else{ - uint k1 = queue_num; - while (k1 == queue_num) k1 = TaskQueueSetSuper::randomParkAndMiller(seed) % _n; - uint k2 = queue_num; - while (k2 == queue_num || k2 == k1) k2 = TaskQueueSetSuper::randomParkAndMiller(seed) % _n; - // Sample both and try the larger. - uint sz1 = _queues[k1]->size(); - uint sz2 = _queues[k2]->size(); - if (sz2 > sz1) return _queues[k2]->pop_global(t); - else return _queues[k1]->pop_global(t); - } + uint k1 = queue_num; + while (k1 == queue_num) k1 = TaskQueueSetSuper::randomParkAndMiller(seed) % _n; + uint k2 = queue_num; + while (k2 == queue_num || k2 == k1) k2 = TaskQueueSetSuper::randomParkAndMiller(seed) % _n; + // Sample both and try the larger. + uint sz1 = _queues[k1]->size(); + uint sz2 = _queues[k2]->size(); + if (sz2 > sz1) return _queues[k2]->pop_global(t); + else return _queues[k1]->pop_global(t); } else if (_n == 2) { // Just try the other one. uint k = (queue_num + 1) % 2;