Skip to content

ORC-1447: [C++] Fix a bug in CpuInfoUtil.cc to support ARM platform#1542

Merged
wgtmac merged 3 commits intoapache:mainfrom
wpleonardo:main
Jun 21, 2023
Merged

ORC-1447: [C++] Fix a bug in CpuInfoUtil.cc to support ARM platform#1542
wgtmac merged 3 commits intoapache:mainfrom
wpleonardo:main

Conversation

@wpleonardo
Copy link
Copy Markdown
Contributor

What changes were proposed in this pull request?

To fix a bug reported in #1534
The bug is that some CpuInfoUtil.cc functions don't support the ARM platform. In this PR, try to fix this bug.

Why are the changes needed?

Currently, ORC can't build success on the ARM platform without this PR.

How was this patch tested?

We can build ORC on the ARM platform directly to check if it can succeed.
If user enabled -DBUILD_ENABLE_AVX512=ON in the cmake process, it will get the below warning message, and BUILD_ENABLE_AVX512 will be changed back to OFF.
CMake Warning at CMakeLists.txt:183 (message):
Only X86 platform support AVX512

Copy link
Copy Markdown
Member

@dongjoon-hyun dongjoon-hyun left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you, @wpleonardo .

@dongjoon-hyun
Copy link
Copy Markdown
Member

cc @santrancisco and @wgtmac

@wpleonardo
Copy link
Copy Markdown
Contributor Author

Thank you, @wpleonardo .

You're welcome. It is my responsibility

santrancisco added a commit to ClickHouse/ClickHouse that referenced this pull request Jun 21, 2023
Copy link
Copy Markdown
Member

@wgtmac wgtmac left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @wpleonardo!

@santrancisco
Copy link
Copy Markdown

santrancisco commented Jun 21, 2023

Thank you so much for the fix, @wpleonardo !! I saw you added support for ARMs processor 🙌 ! In our build workflows, we also support 64 bit PPC... can you extend the fix to that as well? Here is the lastest run (you can ignore some other fail tests but the most important part are Builder*** workflows). The build for ppc64 failed the same way (use of undeclared identifier 'ArchVerifyCpuRequirements'), understandably so as the code does not include ppc64

@wpleonardo
Copy link
Copy Markdown
Contributor Author

Thank you so much for the fix, @wpleonardo !! I saw you added support for ARMs processor 🙌 ! In our build workflows, we also support 64 bit PPC... can you extend the fix to that as well? Here is the lastest run (you can ignore some other fail tests but the most important part are Builder*** workflows). The build for ppc64 failed the same way (use of undeclared identifier 'ArchVerifyCpuRequirements'), understandably so as the code does not include ppc64

OK, let me check this issue today

@wpleonardo
Copy link
Copy Markdown
Contributor Author

@santrancisco I just added the 'ArchVerifyCpuRequirements' code to support the PPC64 platform, but I don't have PPC64 env. Could you help me check if this PR could build success on the PPC64 platform? Thank you very much!

santrancisco added a commit to ClickHouse/ClickHouse that referenced this pull request Jun 21, 2023
@santrancisco
Copy link
Copy Markdown

Works for us! thank you!

@wgtmac wgtmac merged commit ee5e072 into apache:main Jun 21, 2023
dongjoon-hyun pushed a commit that referenced this pull request Jun 21, 2023
### What changes were proposed in this pull request?
To fix a bug reported in #1534
The bug is that some CpuInfoUtil.cc functions don't support the ARM platform. In this PR, try to fix this bug.

### Why are the changes needed?
Currently, ORC can't build success on the ARM platform without this PR.

### How was this patch tested?
We can build ORC on the ARM platform directly to check if it can succeed.
If user enabled -DBUILD_ENABLE_AVX512=ON in the cmake process, it will get the below warning message, and BUILD_ENABLE_AVX512 will be changed back to OFF.
CMake Warning at CMakeLists.txt:183 (message):
Only X86 platform support AVX512

This closes #1542

(cherry picked from commit ee5e072)
Signed-off-by: Dongjoon Hyun <[email protected]>
@dongjoon-hyun dongjoon-hyun added this to the 1.9.0 milestone Jun 21, 2023
@dongjoon-hyun
Copy link
Copy Markdown
Member

I backported this to branch-1.9. Thank you all.

santrancisco added a commit to ClickHouse/ClickHouse that referenced this pull request Jun 22, 2023
@wgtmac
Copy link
Copy Markdown
Member

wgtmac commented Jun 22, 2023

Thank you @dongjoon-hyun!

cxzl25 pushed a commit to cxzl25/orc that referenced this pull request Jan 11, 2024
### What changes were proposed in this pull request?
To fix a bug reported in apache#1534
The bug is that some CpuInfoUtil.cc functions don't support the ARM platform. In this PR, try to fix this bug.

### Why are the changes needed?
Currently, ORC can't build success on the ARM platform without this PR.

### How was this patch tested?
We can build ORC on the ARM platform directly to check if it can succeed.
If user enabled -DBUILD_ENABLE_AVX512=ON in the cmake process, it will get the below warning message, and BUILD_ENABLE_AVX512 will be changed back to OFF.
CMake Warning at CMakeLists.txt:183 (message):
Only X86 platform support AVX512

This closes apache#1542
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants