Hi,
Regarding your question about whether the lib and module are upstreamed 
already, I would like to clarify their current status:
Both libmcruntime.so and the corresponding gdrapi libraries are proprietary 
user-space libraries provided by Metax. They are not upstreamed to the DPDK 
mainline repository.
However, please rest assured that the current patch interacts with them via 
standard dlopen (dynamic loading) at runtime. We do not link directly against 
their source code or require them as hard build-time dependencies. Therefore, 
this approach will not introduce any additional compilation dependencies or 
licensing issues to the DPDK main tree.
------------------------------------------------------------------
发件人:Thomas Monjalon <[email protected]>
发送时间:2026年6月9日(周二) 18:44
收件人:"许玲燕"<[email protected]>
抄 送:dev<[email protected]>; eagostini<[email protected]>
主 题:Re: 回复:[PATCH] gpu/metax: add new driver for Metax GPU
Thank you for the detailed answer and your understanding.
One more question: are the lib and module upstreamed already?
09/06/2026 12:22, 许玲燕:
> Hi,
> Thank you for the detailed feedback and for reviewing the proposal for the 
> Metax GPU driver.
> Based on the questions raised and the analysis of the code implementation, 
> here are the clarifications and my action plan:
> 1. Regarding GPU Access Method
> The driver interfaces with the Metax GPU hardware through a combination of 
> the vendor-provided MC Runtime (Metax Compute Runtime) library and GDRCopy 
> (GPU Direct RDMA) technology.
> 
> * 
> User-space Library: As seen in the maca.c code, the driver dynamically loads 
> (dlopen) the libmcruntime.so library. It uses mc_runtime_api.h to manage GPU 
> contexts, memory allocation, and device attributes.
> 
> * 
> Kernel Module: The driver relies on the underlying Metax kernel driver (for 
> PCI probing and basic device access) and the gdrapi (GDRCopy) kernel module 
> to facilitate zero-copy data transfer between CPU and GPU memory.
> 
> * 
> Dependency: The build log confirms the detection of headers like 
> mc_runtime_api.h and gdrapi.h, which are essential for this integration.
> 2. Clarification on "Rendering" Functionality
> I apologize for the confusion caused by the term "Rendering" in the initial 
> description. Upon reviewing the code and your feedback, I realize this was an 
> inaccurate choice of words.
> 
> * 
> Correction: The intended functionality is purely "Compute/Data Processing" 
> and "Memory Management".
> 
> * 
> Explanation: The driver's core logic (as shown in the patch) focuses on 
> memory registration, allocation, and CPU/GPU data synchronization (via 
> maca_mem_cpu_map and gdrcopy_pin), which are essential for network data 
> processing acceleration rather than graphical rendering. I will correct this 
> terminology in the documentation to avoid further confusion.
> 3. Action Plan: Following the Contribution Guide
> I have reviewed the <"Adding a New Driver"> guide you linked.
> 
> * 
> Patch Splitting: I understand that the current monolithic patch is not 
> suitable. I will rework the submission and split it into a logical patch 
> series:
> * 
> Patch 1: Add the basic infrastructure (Meson files, maintainers, 
> configuration).
> 
> * 
> Patch 2: Implement core device functionality (PCI probing, initialization, 
> context management).
> 
> * 
> Patch 3: Add memory management and data path features (allocation, 
> registration, and CPU mapping).
> Thank you again for your guidance. I will resubmit the revised patch series 
> shortly.
> Best regards,
> Lingyan Xu
> ------------------------------------------------------------------
> 发件人:Thomas Monjalon <[email protected]>
> 发送时间:2026年6月2日(周二) 18:01
> 收件人:"许玲燕"<[email protected]>
> 抄 送:dev<[email protected]>; eagostini<[email protected]>
> 主 题:Re: [PATCH] gpu/metax: add new driver for Metax GPU
> Hello,
> 01/06/2026 07:47, 许玲燕:
> > I am writing to propose a new driver for the Metax GPU,
> How do you access the GPU?
> Are you using a specific library or kernel module?
> > which I believe will significantly enhance our support
> > and performance for this hardware.
> > The patch attached includes the initial implementation of the driver,
> > with key features such as:
> > 
> > * Basic initialization and configuration 
> > * Memory management and allocation 
> > * Core functionality for rendering and compute tasks 
> I am familiar with connecting compute tasks of a GPU
> with DPDK networking, but I'm surprised by the rendering functionality.
> Do you mean graphical rendering of data coming from the network?
> > Please review the code and let me know if you have any feedback or 
> > suggestions.
> > I am more than happy to make any necessary adjustments and improvements.
> Thank you for working on this.
> I recommend following this guide to introduce a new driver:
> https://doc.dpdk.org/guides/contributing/new_driver.html 
> <https://doc.dpdk.org/guides/contributing/new_driver.html > 
> <https://doc.dpdk.org/guides/contributing/new_driver.html 
> <https://doc.dpdk.org/guides/contributing/new_driver.html > >
> 
> 
> 超大附件列表 dpdk-build-test-log.txt [48KB]
> 进入下载页面 
> https://qiye.aliyun.com/alimail/openLinks/downloadMimeMetaDiskBigAttach?id=netdiskid%3Av001%3Afile%3ADzzzzzzNqZx%3BJYiJwCficINAoHh55iyjKdydQzW5hDE%2FGjddF2Xp4ghl2ujmlGlWdfhgNCLOb5s3BZAHvDXTdZhtzGA3q8HJ%2Fv%2FPGnrPJfO1Xc%2BWnHr%2FKRwIkHzWFe5Iwm1IZrurr9hW
>  
> <https://qiye.aliyun.com/alimail/openLinks/downloadMimeMetaDiskBigAttach?id=netdiskid%3Av001%3Afile%3ADzzzzzzNqZx%3BJYiJwCficINAoHh55iyjKdydQzW5hDE%2FGjddF2Xp4ghl2ujmlGlWdfhgNCLOb5s3BZAHvDXTdZhtzGA3q8HJ%2Fv%2FPGnrPJfO1Xc%2BWnHr%2FKRwIkHzWFe5Iwm1IZrurr9hW
>  > 
> 

Reply via email to