Re: 回复: 回复: 回复: Improve UseAVX setting and add cpu descriptions for zhaoxin processors.
Dalibor Topic
dalibor.topic at oracle.com
Fri Nov 21 12:34:48 UTC 2025
On 21/11/2025 13:17, Vic Wang(BJ-RD) wrote:
> Dear David,
>
> My company has previously signed the OCA. At that time, it was not required to provide GitHub usernames, so none were supplied.
> Could you please help me add the GitHub username to my existing Corporate OCA record? Or how to add GitHub username information?
>
> GitHub username: Double-Minds-JV
> Company name: Shanghai Zhaoxin Semiconductor Co., Ltd.
Thanks, Vis - verification request sent.
cheers,
dalibor topic
>
> Thank you very much for your assistance.
> Vic Wang
>
>
>> -----邮件原件-----
>> 发件人: David Holmes <david.holmes at oracle.com>
>> 发送时间: 2025年9月12日 13:45
>> 收件人: Vic Wang(BJ-RD) <VicWang at zhaoxin.com>; hotspot-dev at openjdk.org
>> 主题: Re: 回复: 回复: Improve UseAVX setting and add cpu descriptions for zhaoxin processors.
>>
>>
>>
>> [这封邮件来自外部发件人 谨防风险]
>>
>> On 12/09/2025 3:00 pm, Vic Wang(BJ-RD) wrote:
>>> Hi David,
>>>
>>> So what do I need to do next? Or just wait for the verification process?
>>
>> Just have to wait I'm afraid.
>>
>> David
>> -----
>>
>>> Best Regards!
>>> Vic Wang
>>>
>>>
>>>> -----邮件原件-----
>>>> 发件人: David Holmes <david.holmes at oracle.com>
>>>> 发送时间: 2025年9月12日 11:47
>>>> 收件人: Vic Wang(BJ-RD) <VicWang at zhaoxin.com>; hotspot-dev at openjdk.org
>>>> 主题: Re: 回复: Improve UseAVX setting and add cpu descriptions for zhaoxin processors.
>>>>
>>>>
>>>> On 12/09/2025 1:19 pm, Vic Wang(BJ-RD) wrote:
>>>>> Hi David,
>>>>>
>>>>> I have submitted a PR, please help to review:
>>>>> https://github.com/openjdk/jdk/pull/27241
>>>>>
>>>>> It shows "OCA signatory status must be verified".
>>>>> My employer, Shanghai Zhaoxin Semiconductor, has already signed the OCA, and it can be found on http://oca.opensource.oracle.com.
>>>>> Please help me with this issue.
>>>>
>>>> This is your first submission via Github so it has to go through the verification process.
>>>>
>>>> David
>>>>
>>>>> Best Regards!
>>>>> Vic Wang
>>>>>
>>>>>
>>>>>> -----邮件原件-----
>>>>>> 发件人: David Holmes <david.holmes at oracle.com>
>>>>>> 发送时间: 2025年9月12日 9:06
>>>>>> 收件人: Vic Wang(BJ-RD) <VicWang at zhaoxin.com>; hotspot-dev at openjdk.org
>>>>>> 主题: Re: Improve UseAVX setting and add cpu descriptions for zhaoxin processors.
>>>>>>
>>>>>>
>>>>>> Hi Vic,
>>>>>>
>>>>>> It has been a long time since we heard from you. :)
>>>>>>
>>>>>> I have filed a JBS issue for this update:
>>>>>>
>>>>>> https://bugs.openjdk.org/browse/JDK-8367478
>>>>>>
>>>>>> Cheers,
>>>>>> David
>>>>>>
>>>>>> On 11/09/2025 11:33 pm, Vic Wang(BJ-RD) wrote:
>>>>>>> Hi All
>>>>>>>
>>>>>>> Here is the patch that improving the UseAVX setting and add cpu descriptions for zhaoxin processors.
>>>>>>> Can you help to review the patch and assign a number for a pull request?
>>>>>>> Thank you!
>>>>>>>
>>>>>>>
>>>>>>> Patch in my fork repository:
>>>>>>> https://github.com/Double-Minds-JV/jdk/commit/06498b42ed54021b3ed1
>>>>>>> 4a
>>>>>>> 9c
>>>>>>> cc9adf52e9360c9c
>>>>>>>
>>>>>>>> diff --git a/src/hotspot/cpu/x86/vm_version_x86.cpp
>>>>>>>> b/src/hotspot/cpu/x86/vm_version_x86.cpp
>>>>>>>> index 094ab370190..4043b29f18c 100644
>>>>>>>> --- a/src/hotspot/cpu/x86/vm_version_x86.cpp
>>>>>>>> +++ b/src/hotspot/cpu/x86/vm_version_x86.cpp
>>>>>>>> @@ -931,9 +931,17 @@ void VM_Version::get_processor_features() {
>>>>>>>> if (UseSSE < 1)
>>>>>>>> _features.clear_feature(CPU_SSE);
>>>>>>>>
>>>>>>>> - //since AVX instructions is slower than SSE in some ZX cpus, force USEAVX=0.
>>>>>>>> - if (is_zx() && ((cpu_family() == 6) || (cpu_family() == 7))) {
>>>>>>>> - UseAVX = 0;
>>>>>>>> + // ZX cpus specific settings
>>>>>>>> + if (is_zx() && FLAG_IS_DEFAULT(UseAVX)) {
>>>>>>>> + if (cpu_family() == 7) {
>>>>>>>> + if (extended_cpu_model() == 0x5B || extended_cpu_model() == 0x6B) {
>>>>>>>> + UseAVX = 1;
>>>>>>>> + } else if (extended_cpu_model() == 0x1B || extended_cpu_model() == 0x3B) {
>>>>>>>> + UseAVX = 0;
>>>>>>>> + }
>>>>>>>> + } else if (cpu_family() == 6) {
>>>>>>>> + UseAVX = 0;
>>>>>>>> + }
>>>>>>>> }
>>>>>>>>
>>>>>>>> // UseSSE is set to the smaller of what hardware supports
>>>>>>>> and what @@ -2592,6 +2600,7 @@ void
>>>>>>>> VM_Version::resolve_cpu_information_details(void) {
>>>>>>>>
>>>>>>>> const char* VM_Version::cpu_family_description(void) {
>>>>>>>> int cpu_family_id = extended_cpu_family();
>>>>>>>> + int cpu_model_id = extended_cpu_model();
>>>>>>>> if (is_amd()) {
>>>>>>>> if (cpu_family_id < ExtendedFamilyIdLength_AMD) {
>>>>>>>> return _family_id_amd[cpu_family_id]; @@ -2605,6
>>>>>>>> +2614,22 @@ const char* VM_Version::cpu_family_description(void) {
>>>>>>>> return _family_id_intel[cpu_family_id];
>>>>>>>> }
>>>>>>>> }
>>>>>>>> + if (is_zx()) {
>>>>>>>> + if (cpu_family_id == 7) {
>>>>>>>> + switch (cpu_model_id) {
>>>>>>>> + case 0x1B:
>>>>>>>> + return "wudaokou";
>>>>>>>> + case 0x3B:
>>>>>>>> + return "lujiazui";
>>>>>>>> + case 0x5B:
>>>>>>>> + return "yongfeng";
>>>>>>>> + case 0x6B:
>>>>>>>> + return "shijidadao";
>>>>>>>> + }
>>>>>>>> + } else if (cpu_family_id == 6) {
>>>>>>>> + return "zhangjiang";
>>>>>>>> + }
>>>>>>>> + }
>>>>>>>> if (is_hygon()) {
>>>>>>>> return "Dhyana";
>>>>>>>> }
>>>>>>>> @@ -2624,6 +2649,9 @@ int VM_Version::cpu_type_description(char* const buf, size_t buf_len) {
>>>>>>>> } else if (is_amd()) {
>>>>>>>> cpu_type = "AMD";
>>>>>>>> x64 = cpu_is_em64t() ? " AMD64" : "";
>>>>>>>> + } else if (is_zx()) {
>>>>>>>> + cpu_type = "Zhaoxin";
>>>>>>>> + x64 = cpu_is_em64t() ? " x86_64" : "";
>>>>>>>> } else if (is_hygon()) {
>>>>>>>> cpu_type = "Hygon";
>>>>>>>> x64 = cpu_is_em64t() ? " AMD64" : ""; @@ -3236,6 +3264,12
>>>>>>>> @@ int VM_Version::allocate_prefetch_distance(bool use_watermark_prefetch) {
>>>>>>>> } else {
>>>>>>>> return 128; // Athlon
>>>>>>>> }
>>>>>>>> + } else if (is_zx()) {
>>>>>>>> + if (supports_sse2()) {
>>>>>>>> + return 256;
>>>>>>>> + } else {
>>>>>>>> + return 128;
>>>>>>>> + }
>>>>>>>> } else { // Intel
>>>>>>>> if (supports_sse3() && is_intel_server_family()) {
>>>>>>>> if (supports_sse4_2() && supports_ht()) { // Nehalem
>>>>>>>> based cpus
>>>>>>>
>>>>>>> I have run the jtreg tests after applying the patch, the test-summary shows follows:
>>>>>>>> ==============================
>>>>>>>> Test summary
>>>>>>>> ==============================
>>>>>>>> TEST TOTAL PASS FAIL ERROR SKIP
>>>>>>>> jtreg:test/hotspot/jtreg:tier1 3107 2797 0 0 310
>>>>>>>> jtreg:test/jdk:tier1 2513 2472 0 0 41
>>>>>>>> jtreg:test/langtools:tier1 4668 4656 0 0 12
>>>>>>>> jtreg:test/jaxp:tier1 0 0 0 0 0
>>>>>>>> jtreg:test/lib-test:tier1 38 38 0 0 0
>>>>>>>> ==============================
>>>>>>>> TEST SUCCESS
>>>>>>>
>>>>>>> Best Regards!
>>>>>>> Vic Wang
>>>>>>>
>>>>>>>
>>>>>>> 保密声明:
>>>>>>> 本邮件含有保密或专有信息,仅供指定收件人使用。严禁对本邮件或其内容做任何未经授权的查阅、使用、复制或转发。
>>>>>>> CONFIDENTIAL NOTE:
>>>>>>> This email contains confidential or legally privileged information and is for the sole use of its intended recipient. Any unauthorized review, use, copying or forwarding of this email or the content of this email is strictly prohibited.
>>>
>>>
>>>
>>> 保密声明:
>>> 本邮件含有保密或专有信息,仅供指定收件人使用。严禁对本邮件或其内容做任何未经授权的查阅、使用、复制或转发。
>>> CONFIDENTIAL NOTE:
>>> This email contains confidential or legally privileged information and is for the sole use of its intended recipient. Any unauthorized review, use, copying or forwarding of this email or the content of this email is strictly prohibited.
>
>
> 保密声明:
> 本邮件含有保密或专有信息,仅供指定收件人使用。严禁对本邮件或其内容做任何未经授权的查阅、使用、复制或转发。
> CONFIDENTIAL NOTE:
> This email contains confidential or legally privileged information and is for the sole use of its intended recipient. Any unauthorized review, use, copying or forwarding of this email or the content of this email is strictly prohibited.
--
<http://www.oracle.com> Dalibor Topic
Consulting Product Manager
Phone: +494089091214 <tel:+494089091214>, Mobile: +491737185961
<tel:+491737185961>
Oracle Global Services Germany GmbH
Hauptverwaltung: Riesstr. 25, D-80992 München
Registergericht: Amtsgericht München, HRB 246209
Geschäftsführer: Ralf Herrmann
More information about the hotspot-dev
mailing list