Skip to content

Request for RISC-V Architecture Support in Elasticsearch #126888

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
xiaofei-gong opened this issue Apr 16, 2025 · 1 comment
Open

Request for RISC-V Architecture Support in Elasticsearch #126888

xiaofei-gong opened this issue Apr 16, 2025 · 1 comment
Labels
:Delivery/Build Build or test infrastructure >enhancement Team:Delivery Meta label for Delivery team

Comments

@xiaofei-gong
Copy link

Description

Description: As RISC-V architecture gains momentum in cloud-native and edge computing scenarios, we propose adding official RISC-V support to Elasticsearch. This would enable deployments on RISC-V based servers/IoT devices and align with the open-source philosophy shared by both projects.

Technical Considerations:
JDK Compatibility: Requires OpenJDK RISC-V port (currently experimental in JDK 21+). Track progress via OpenJDK Portola Project
Native Libraries:
Rebuild JNI components (e.g., Lucene native modules, Netty transport) for RISC-V
Verify dependencies like zlib/jemalloc compatibility
CI/CD Pipeline:
Add RISC-V build targets (QEMU emulation or physical hardware)
Cross-compilation support in Gradle build system
Performance Testing:
Benchmark search/ingestion performance on RISC-V vs x86/ARM
Memory management validation for 64-bit RV64GC

Community Impact:

  1. Attract developers in RISC-V ecosystem (China/EU markets show strong adoption)
  2. Enable edge computing use cases with low-power devices
  3. Strengthen open-source infrastructure diversity

Proposed Milestones:
Phase 1: CI pipeline setup with RISC-V emulation
Phase 2: Core functionality validation
Phase 3: Performance optimization

Additional Context: Recent RISC-V developments show promising server-grade implementations like Alibaba Xuantie and Ventana Veyron. Reference implementations exist in python/cpython#104071 and MySQL.

Would appreciate feedback from maintainers on feasibility and potential collaboration avenues.

@xiaofei-gong xiaofei-gong added >enhancement needs:triage Requires assignment of a team area label labels Apr 16, 2025
@gong-flying gong-flying marked this as a duplicate of #126886 Apr 16, 2025
@gbanasiak gbanasiak added the :Delivery/Build Build or test infrastructure label Apr 28, 2025
@elasticsearchmachine elasticsearchmachine added the Team:Delivery Meta label for Delivery team label Apr 28, 2025
@elasticsearchmachine
Copy link
Collaborator

Pinging @elastic/es-delivery (Team:Delivery)

@elasticsearchmachine elasticsearchmachine removed the needs:triage Requires assignment of a team area label label Apr 28, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
:Delivery/Build Build or test infrastructure >enhancement Team:Delivery Meta label for Delivery team
Projects
None yet
Development

No branches or pull requests

3 participants