為了降低使用eRDMA的門檻,使更多使用者和應用情境能夠更方便地利用eRDMA的能力,本文介紹了核心態適配方案SMC-R和使用者態適配方案NetACC,通過這些適配方案,可以協助您更容易地將eRDMA整合到各種應用中。
應用情境
支援的應用情境包括Redis、Spark、HPC、Kafka等,並提供不同的適配方案。無感適配無需修改代碼,只需重新編譯即可實現eRDMA支援。有感適配則需要代碼改動。
Redis應用
推薦採用SMC-R核心態方式進行無感適配,詳細資料,請參見基於eRDMA部署SMC-R和Redis。
HPC應用
利用eRDMA技術,E-HPC NEXT叢集中的氣候氣象、工業模擬、分子動力等HPC多節點並行任務可達到媲美線下叢集的高速網路效能。詳細資料,請參見基於eRDMA部署彈性高效能運算叢集。
Spark應用
可以選擇通過JVERBS的方式,需要一定的代碼改造工作量,詳細資料,請參見基於eRDMA部署高網路效能的Spark叢集。
Kafka應用
基於支援eRDMA的ECS執行個體部署Kafka叢集,最佳化叢集內部節點間的資料轉送效率,詳細資料,請參見基於eRDMA部署高網路效能的Kafka叢集。
更多最佳部署實踐,請參考通過eRDMA提升網路效能。
適配方案
核心態適配方案:SMC-R
SMC-R由IBM於2017年開源至Linux 4.11並持續維護至今,其協議標準可參考RFC 7609。Alibaba Cloud Linux 3作業系統基於阿里雲彈性RDMA技術首次將SMC-R帶上雲上情境,實現對TCP應用透明無損的替換,提供高效能、普惠的硬體卸載網路。
更多資訊,請參見共用記憶體通訊(SMC)使能和配置說明。
使用者態適配方案:NetACC
NetACC(Network Accelerator)是一個使用者態網路加速庫,可以通過LD_PRELOAD的方式載入使用,無需修改應用代碼。NetACC利用eRDMA的低時延、高吞吐、核心旁路、協議棧卸載等優勢,通過相容socket介面,實現對現有TCP應用的加速效果。
更多資訊,請參見NetACC介紹。