已开启
A2 PCIE5.0 MEMCPY_ASYNC硬件耗时波动问题 #12
guo-yanjun创建于  7月25日
guo-yanjun成员
7月25日 创建

//g++ -o p2pDemo p2p_async_acl.cpp -I/usr/local/Ascend/ascend-toolkit/latest/include/ -L/usr/local/Ascend/ascend-toolkit/latest/lib64/ -lascendcl -std=c++11
#include "chrono"
#include "acl/acl.h"
#include
#include
#include
using namespace std;

#define API_CALL(func)
do {
auto ret = func;
if (ret != 0) {
std::cout << "call " << #func << " failed, ret = " << ret << std::endl;
exit(-1);
}
} while (0) \

constexpr uint32_t SIZE_MB = 1024 * 1024;
constexpr uint32_t CP_SIZE = 256 * SIZE_MB;
constexpr uint32_t LOOP_NUM = 40 * 500;
constexpr uint32_t WIDTH_10 = 10;
constexpr uint32_t WIDTH_20 = 20;
constexpr uint32_t WIDTH_30 = 30;

void ComputeUnidirectionalBandwidth(int32_t srcId, int32_t dstId)
{
// 源device上的准备操作
API_CALL(aclrtSetDevice(srcId));
API_CALL(aclrtDeviceEnablePeerAccess(dstId, 0));
void* srcDev = nullptr;
API_CALL(aclrtMalloc(&srcDev, CP_SIZE, ACL_MEM_TYPE_HIGH_BAND_WIDTH));
API_CALL(aclrtMemset(srcDev, CP_SIZE, 'a', CP_SIZE));

// 目的device上的准备操作
API_CALL(aclrtSetDevice(dstId));
API_CALL(aclrtDeviceEnablePeerAccess(srcId, 0));
void* dstDev = nullptr;
API_CALL(aclrtMalloc(&dstDev, CP_SIZE, ACL_MEM_TYPE_HIGH_BAND_WIDTH));
API_CALL(aclrtMemset(dstDev, CP_SIZE, 'b', CP_SIZE));

// 写带宽使用src卡上的context
API_CALL(aclrtSetDevice(srcId));
aclrtStream stream = nullptr;
API_CALL(aclrtCreateStream(&stream));
aclrtEvent startEvent = nullptr;
aclrtEvent endEvent = nullptr;
API_CALL(aclrtCreateEventWithFlag(&startEvent, ACL_EVENT_TIME_LINE));
API_CALL(aclrtCreateEventWithFlag(&endEvent, ACL_EVENT_TIME_LINE));
cout << "***************Unidirectional Bandwidth******************" << endl;
cout << left << setw(WIDTH_20) << "Duration(ms)" << setw(WIDTH_20) << "Data size(GB)";
cout << setw(WIDTH_20) << "Bandwidth(GB/s)" << endl;

for (int i = 0; i < LOOP_NUM; i++) { // 多次拷贝
    API_CALL(aclrtRecordEvent(startEvent, stream));
    API_CALL(aclrtMemcpyAsync(dstDev, CP_SIZE, srcDev, CP_SIZE, ACL_MEMCPY_DEVICE_TO_DEVICE, stream));
    API_CALL(aclrtRecordEvent(endEvent, stream));
    API_CALL(aclrtSynchronizeStream(stream));
    
    float time_ms;
    API_CALL(aclrtEventElapsedTime(&time_ms, startEvent, endEvent));
    auto bandwidth = (CP_SIZE / 1e9) / (time_ms / 1e3);
    cout << setw(WIDTH_20) << time_ms << setw(WIDTH_20) << (CP_SIZE / 1e9);
    cout << setw(WIDTH_20) << bandwidth << endl;
}

// 释放内存
API_CALL(aclrtFree(srcDev));
API_CALL(aclrtFree(dstDev));
API_CALL(aclrtResetDevice(dstId));
API_CALL(aclrtSetDevice(srcId));
API_CALL(aclrtResetDevice(srcId));

}

void ComputeBidirectionalBandwidth(int32_t srcId, int32_t dstId) {
// src上的准备操作
API_CALL(aclrtSetDevice(srcId));
API_CALL(aclrtDeviceEnablePeerAccess(dstId, 0));
void* srcSend;
API_CALL(aclrtMalloc(&srcSend, CP_SIZE, ACL_MEM_TYPE_HIGH_BAND_WIDTH));
API_CALL(aclrtMemset(srcSend, CP_SIZE, 'a', CP_SIZE));
void* srcRecv;
API_CALL(aclrtMalloc(&srcRecv, CP_SIZE, ACL_MEM_TYPE_HIGH_BAND_WIDTH));
API_CALL(aclrtMemset(srcRecv, CP_SIZE, 'b', CP_SIZE));

aclrtStream stream = nullptr;
API_CALL(aclrtCreateStream(&stream));
aclrtEvent startEvent = nullptr;
aclrtEvent endEvent = nullptr;
API_CALL(aclrtCreateEventWithFlag(&startEvent, ACL_EVENT_TIME_LINE));
API_CALL(aclrtCreateEventWithFlag(&endEvent, ACL_EVENT_TIME_LINE));

// dst上的准备操作
API_CALL(aclrtSetDevice(dstId));
API_CALL(aclrtDeviceEnablePeerAccess(srcId, 0));
void* dstSend;
API_CALL(aclrtMalloc(&dstSend, CP_SIZE, ACL_MEM_TYPE_HIGH_BAND_WIDTH));
API_CALL(aclrtMemset(dstSend, CP_SIZE, 'a', CP_SIZE));
void* dstRecv;
API_CALL(aclrtMalloc(&dstRecv, CP_SIZE, ACL_MEM_TYPE_HIGH_BAND_WIDTH));
API_CALL(aclrtMemset(dstRecv, CP_SIZE, 'b', CP_SIZE));

aclrtStream streamReverse = nullptr;
API_CALL(aclrtCreateStream(&streamReverse));
aclrtEvent startEventReverse = nullptr;
aclrtEvent endEventReverse = nullptr;
API_CALL(aclrtCreateEventWithFlag(&startEventReverse, ACL_EVENT_TIME_LINE));
API_CALL(aclrtCreateEventWithFlag(&endEventReverse, ACL_EVENT_TIME_LINE));

cout << "***************Bidirectional Bandwidth******************" << endl;
cout << setw(WIDTH_30) << "Src dur,  Dst dur(ms)" << setw(WIDTH_20) << "Data size(GB)";
cout << setw(WIDTH_20) << "Bandwidth(GB/s)" << endl;
for (int i = 0; i < LOOP_NUM; i++) { //多次拷贝
    API_CALL(aclrtSetDevice(srcId));
    API_CALL(aclrtRecordEvent(startEvent, stream));
    API_CALL(aclrtMemcpyAsync(dstRecv, CP_SIZE, srcSend, CP_SIZE, ACL_MEMCPY_DEVICE_TO_DEVICE, stream));
    API_CALL(aclrtRecordEvent(endEvent, stream));
    
    API_CALL(aclrtSetDevice(dstId));
    API_CALL(aclrtRecordEvent(startEventReverse, streamReverse));
    API_CALL(aclrtMemcpyAsync(srcRecv, CP_SIZE, dstSend, CP_SIZE, ACL_MEMCPY_DEVICE_TO_DEVICE, streamReverse));
    API_CALL(aclrtRecordEvent(endEventReverse, streamReverse));
    
    API_CALL(aclrtSetDevice(srcId));
    API_CALL(aclrtSynchronizeStream(stream));
    float time_ms;
    API_CALL(aclrtEventElapsedTime(&time_ms, startEvent, endEvent));

    API_CALL(aclrtSetDevice(dstId));
    API_CALL(aclrtSynchronizeStream(streamReverse));
    float timeReverse_ms;
    API_CALL(aclrtEventElapsedTime(&timeReverse_ms, startEventReverse, endEventReverse));
    
    auto bandwidth = ((CP_SIZE * 2) / 1e9) / (((time_ms + timeReverse_ms) / 2) / 1e3);
    cout << setw(WIDTH_10) << time_ms << setw(WIDTH_30 - WIDTH_10) << timeReverse_ms;
    cout << setw(WIDTH_20) << (CP_SIZE * 2 / 1e9) << setw(WIDTH_20) << bandwidth << endl;
}

// 释放内存
API_CALL(aclrtSetDevice(srcId));
API_CALL(aclrtFree(srcSend));
API_CALL(aclrtFree(srcRecv));
API_CALL(aclrtResetDevice(srcId));

API_CALL(aclrtSetDevice(dstId));
API_CALL(aclrtFree(dstSend));
API_CALL(aclrtFree(dstRecv));
API_CALL(aclrtResetDevice(dstId));

}

int main(const int argc, const char** argv) {
int32_t srcId = 0;
int32_t dstId = 1;
if (argc == 3) {
srcId = stoi(argv[1]);
dstId = stoi(argv[2]);
}
cout << "Device "<< srcId << " to " << dstId << endl;

API_CALL(aclInit(nullptr));
int32_t canAccessPeer = 0;
API_CALL(aclrtDeviceCanAccessPeer(&canAccessPeer, srcId, dstId));
if (canAccessPeer == 1) {
    ComputeUnidirectionalBandwidth(srcId, dstId);
    cout << "\n\n\n" << endl;
    ComputeBidirectionalBandwidth(srcId, dstId);
}
API_CALL(aclFinalize());

return 0;

}

likedislike
guo-yanjun成员
7月25日 评论:

// g++ -o h2dD2hDemo h2d_d2h_acl.cpp
// -I/usr/local/Ascend/ascend-toolkit/latest/include/
// -L/usr/local/Ascend/ascend-toolkit/latest/lib64/
// -lascendcl -std=c++11

#include "acl/acl.h"

#include
#include
#include
#include
#include

#define API_CALL(func)
do {
const auto ret = (func);
if (ret != ACL_SUCCESS) {
std::cout << "call " << #func << " failed, ret = " << ret << std::endl;
std::exit(EXIT_FAILURE);
}
} while (0)

namespace {

constexpr size_t SIZE_MB = 1024U * 1024U;
constexpr size_t CP_SIZE = 256U * SIZE_MB;
constexpr uint32_t LOOP_NUM = 40U * 500U;
constexpr int32_t WIDTH_20 = 20;

void ComputeBandwidth(
const char* title, void* dst, const void* src, aclrtMemcpyKind kind, aclrtStream stream, aclrtEvent startEvent,
aclrtEvent endEvent)
{
std::cout << "" << title << "" << std::endl;
std::cout << std::left << std::setw(WIDTH_20) << "Duration(ms)" << std::setw(WIDTH_20) << "Data size(GB)"
<< std::setw(WIDTH_20) << "Bandwidth(GB/s)" << std::endl;

const double dataSizeGb = static_cast<double>(CP_SIZE) / 1e9;
for (uint32_t i = 0; i < LOOP_NUM; ++i) {
    API_CALL(aclrtRecordEvent(startEvent, stream));
    API_CALL(aclrtMemcpyAsync(dst, CP_SIZE, src, CP_SIZE, kind, stream));
    API_CALL(aclrtRecordEvent(endEvent, stream));
    API_CALL(aclrtSynchronizeStream(stream));

    float timeMs = 0.0F;
    API_CALL(aclrtEventElapsedTime(&timeMs, startEvent, endEvent));
    const double bandwidth = dataSizeGb / (static_cast<double>(timeMs) / 1e3);
    std::cout << std::setw(WIDTH_20) << timeMs << std::setw(WIDTH_20) << dataSizeGb << std::setw(WIDTH_20)
              << bandwidth << std::endl;
}

}

void ComputeH2DAndD2HBandwidth(int32_t deviceId)
{
API_CALL(aclrtSetDevice(deviceId));

void* hostMem = nullptr;
API_CALL(aclrtMallocHost(&hostMem, CP_SIZE));
std::memset(hostMem, 'a', CP_SIZE);

void* deviceMem = nullptr;
API_CALL(aclrtMalloc(&deviceMem, CP_SIZE, ACL_MEM_TYPE_HIGH_BAND_WIDTH));
API_CALL(aclrtMemset(deviceMem, CP_SIZE, 'b', CP_SIZE));

aclrtStream stream = nullptr;
API_CALL(aclrtCreateStream(&stream));

aclrtEvent startEvent = nullptr;
aclrtEvent endEvent = nullptr;
API_CALL(aclrtCreateEventWithFlag(&startEvent, ACL_EVENT_TIME_LINE));
API_CALL(aclrtCreateEventWithFlag(&endEvent, ACL_EVENT_TIME_LINE));

ComputeBandwidth("H2D Bandwidth", deviceMem, hostMem, ACL_MEMCPY_HOST_TO_DEVICE, stream, startEvent, endEvent);
std::cout << std::endl;
ComputeBandwidth("D2H Bandwidth", hostMem, deviceMem, ACL_MEMCPY_DEVICE_TO_HOST, stream, startEvent, endEvent);

API_CALL(aclrtDestroyEvent(startEvent));
API_CALL(aclrtDestroyEvent(endEvent));
API_CALL(aclrtDestroyStream(stream));
API_CALL(aclrtFree(deviceMem));
API_CALL(aclrtFreeHost(hostMem));
API_CALL(aclrtResetDevice(deviceId));

}

} // namespace

int main(int argc, char** argv)
{
int32_t deviceId = 0;
if (argc == 2) {
deviceId = std::stoi(argv[1]);
} else if (argc != 1) {
std::cout << "Usage: " << argv[0] << " [device_id]" << std::endl;
return EXIT_FAILURE;
}

std::cout << "Device " << deviceId << std::endl;
API_CALL(aclInit(nullptr));
ComputeH2DAndD2HBandwidth(deviceId);
API_CALL(aclFinalize());
return EXIT_SUCCESS;

}

likedislike
guo-yanjun成员
7月25日 评论:

/*
g++ -o p2pAclGraphDemo p2p_aclgraph.cpp
-I/home/developer/Ascend/ascend-toolkit/latest/include/
-L/home/developer/Ascend/ascend-toolkit/latest/lib64/
-lascendcl -std=c++11
*/

#include "acl/acl.h"

#include
#include
#include
#include
#include

#define API_CALL(func)
do {
const auto ret = (func);
if (ret != ACL_SUCCESS) {
std::cout << "call " << #func << " failed, ret = " << ret << std::endl;
std::exit(EXIT_FAILURE);
}
} while (0)

namespace {

constexpr size_t SIZE_MB = 1024U * 1024U;
constexpr size_t CP_SIZE = 256U * SIZE_MB;
constexpr uint32_t LOOP_NUM = 40U * 500U;
constexpr int32_t WIDTH_10 = 10;
constexpr int32_t WIDTH_20 = 20;
constexpr int32_t WIDTH_30 = 30;

void CaptureP2pMemcpyGraph(void* dst, const void* src, aclrtStream stream, aclmdlRI* modelRI)
{
API_CALL(aclmdlRICaptureBegin(stream, ACL_MODEL_RI_CAPTURE_MODE_RELAXED));
API_CALL(aclrtMemcpyAsync(dst, CP_SIZE, src, CP_SIZE, ACL_MEMCPY_DEVICE_TO_DEVICE, stream));
API_CALL(aclmdlRICaptureEnd(stream, modelRI));
}

void ComputeUnidirectionalGraphBandwidth(int32_t srcId, int32_t dstId)
{
API_CALL(aclrtSetDevice(srcId));
API_CALL(aclrtDeviceEnablePeerAccess(dstId, 0));
void* srcDev = nullptr;
API_CALL(aclrtMalloc(&srcDev, CP_SIZE, ACL_MEM_TYPE_HIGH_BAND_WIDTH));
API_CALL(aclrtMemset(srcDev, CP_SIZE, 'a', CP_SIZE));

API_CALL(aclrtSetDevice(dstId));
API_CALL(aclrtDeviceEnablePeerAccess(srcId, 0));
void* dstDev = nullptr;
API_CALL(aclrtMalloc(&dstDev, CP_SIZE, ACL_MEM_TYPE_HIGH_BAND_WIDTH));
API_CALL(aclrtMemset(dstDev, CP_SIZE, 'b', CP_SIZE));

API_CALL(aclrtSetDevice(srcId));
aclrtStream execStream = nullptr;
API_CALL(aclrtCreateStream(&execStream));

aclmdlRI modelRI = nullptr;
CaptureP2pMemcpyGraph(dstDev, srcDev, execStream, &modelRI);

aclrtEvent startEvent = nullptr;
aclrtEvent endEvent = nullptr;
API_CALL(aclrtCreateEventWithFlag(&startEvent, ACL_EVENT_TIME_LINE));
API_CALL(aclrtCreateEventWithFlag(&endEvent, ACL_EVENT_TIME_LINE));

std::cout << "********ACL Graph Unidirectional P2P Bandwidth********" << std::endl;
std::cout << std::left << std::setw(WIDTH_20) << "Graph duration(ms)" << std::setw(WIDTH_20) << "Data size(GB)"
          << std::setw(WIDTH_20) << "Bandwidth(GB/s)" << std::endl;

const double dataSizeGb = static_cast<double>(CP_SIZE) / 1e9;
for (uint32_t i = 0; i < LOOP_NUM; ++i) {
    API_CALL(aclrtRecordEvent(startEvent, execStream));
    API_CALL(aclmdlRIExecuteAsync(modelRI, execStream));
    API_CALL(aclrtRecordEvent(endEvent, execStream));
    API_CALL(aclrtSynchronizeStream(execStream));

    float timeMs = 0.0F;
    API_CALL(aclrtEventElapsedTime(&timeMs, startEvent, endEvent));
    const double bandwidth = dataSizeGb / (static_cast<double>(timeMs) / 1e3);
    std::cout << std::setw(WIDTH_20) << timeMs << std::setw(WIDTH_20) << dataSizeGb << std::setw(WIDTH_20)
              << bandwidth << std::endl;
}

API_CALL(aclmdlRIDestroy(modelRI));
API_CALL(aclrtDestroyEvent(startEvent));
API_CALL(aclrtDestroyEvent(endEvent));
API_CALL(aclrtDestroyStream(execStream));
API_CALL(aclrtFree(srcDev));
API_CALL(aclrtDeviceDisablePeerAccess(dstId));

API_CALL(aclrtSetDevice(dstId));
API_CALL(aclrtFree(dstDev));
API_CALL(aclrtDeviceDisablePeerAccess(srcId));
API_CALL(aclrtResetDevice(dstId));

API_CALL(aclrtSetDevice(srcId));
API_CALL(aclrtResetDevice(srcId));

}

void ComputeBidirectionalGraphBandwidth(int32_t srcId, int32_t dstId)
{
API_CALL(aclrtSetDevice(srcId));
API_CALL(aclrtDeviceEnablePeerAccess(dstId, 0));
void* srcSend = nullptr;
void* srcRecv = nullptr;
API_CALL(aclrtMalloc(&srcSend, CP_SIZE, ACL_MEM_TYPE_HIGH_BAND_WIDTH));
API_CALL(aclrtMalloc(&srcRecv, CP_SIZE, ACL_MEM_TYPE_HIGH_BAND_WIDTH));
API_CALL(aclrtMemset(srcSend, CP_SIZE, 'a', CP_SIZE));
API_CALL(aclrtMemset(srcRecv, CP_SIZE, 'b', CP_SIZE));

API_CALL(aclrtSetDevice(dstId));
API_CALL(aclrtDeviceEnablePeerAccess(srcId, 0));
void* dstSend = nullptr;
void* dstRecv = nullptr;
API_CALL(aclrtMalloc(&dstSend, CP_SIZE, ACL_MEM_TYPE_HIGH_BAND_WIDTH));
API_CALL(aclrtMalloc(&dstRecv, CP_SIZE, ACL_MEM_TYPE_HIGH_BAND_WIDTH));
API_CALL(aclrtMemset(dstSend, CP_SIZE, 'a', CP_SIZE));
API_CALL(aclrtMemset(dstRecv, CP_SIZE, 'b', CP_SIZE));

API_CALL(aclrtSetDevice(srcId));
aclrtStream srcExecStream = nullptr;
API_CALL(aclrtCreateStream(&srcExecStream));
aclmdlRI srcModelRI = nullptr;
CaptureP2pMemcpyGraph(dstRecv, srcSend, srcExecStream, &srcModelRI);
aclrtEvent srcStartEvent = nullptr;
aclrtEvent srcEndEvent = nullptr;
API_CALL(aclrtCreateEventWithFlag(&srcStartEvent, ACL_EVENT_TIME_LINE));
API_CALL(aclrtCreateEventWithFlag(&srcEndEvent, ACL_EVENT_TIME_LINE));

API_CALL(aclrtSetDevice(dstId));
aclrtStream dstExecStream = nullptr;
API_CALL(aclrtCreateStream(&dstExecStream));
aclmdlRI dstModelRI = nullptr;
CaptureP2pMemcpyGraph(srcRecv, dstSend, dstExecStream, &dstModelRI);
aclrtEvent dstStartEvent = nullptr;
aclrtEvent dstEndEvent = nullptr;
API_CALL(aclrtCreateEventWithFlag(&dstStartEvent, ACL_EVENT_TIME_LINE));
API_CALL(aclrtCreateEventWithFlag(&dstEndEvent, ACL_EVENT_TIME_LINE));

std::cout << "*********ACL Graph Bidirectional P2P Bandwidth*********" << std::endl;
std::cout << std::left << std::setw(WIDTH_30) << "Src dur, Dst dur(ms)" << std::setw(WIDTH_20) << "Data size(GB)"
          << std::setw(WIDTH_20) << "Bandwidth(GB/s)" << std::endl;

const double dataSizeGb = static_cast<double>(CP_SIZE) * 2.0 / 1e9;
for (uint32_t i = 0; i < LOOP_NUM; ++i) {
    API_CALL(aclrtSetDevice(srcId));
    API_CALL(aclrtRecordEvent(srcStartEvent, srcExecStream));
    API_CALL(aclmdlRIExecuteAsync(srcModelRI, srcExecStream));
    API_CALL(aclrtRecordEvent(srcEndEvent, srcExecStream));

    API_CALL(aclrtSetDevice(dstId));
    API_CALL(aclrtRecordEvent(dstStartEvent, dstExecStream));
    API_CALL(aclmdlRIExecuteAsync(dstModelRI, dstExecStream));
    API_CALL(aclrtRecordEvent(dstEndEvent, dstExecStream));

    API_CALL(aclrtSetDevice(srcId));
    API_CALL(aclrtSynchronizeStream(srcExecStream));
    float srcTimeMs = 0.0F;
    API_CALL(aclrtEventElapsedTime(&srcTimeMs, srcStartEvent, srcEndEvent));

    API_CALL(aclrtSetDevice(dstId));
    API_CALL(aclrtSynchronizeStream(dstExecStream));
    float dstTimeMs = 0.0F;
    API_CALL(aclrtEventElapsedTime(&dstTimeMs, dstStartEvent, dstEndEvent));

    const double averageTimeMs = (static_cast<double>(srcTimeMs) + static_cast<double>(dstTimeMs)) / 2.0;
    const double bandwidth = dataSizeGb / (averageTimeMs / 1e3);
    std::cout << std::setw(WIDTH_10) << srcTimeMs << std::setw(WIDTH_30 - WIDTH_10) << dstTimeMs
              << std::setw(WIDTH_20) << dataSizeGb << std::setw(WIDTH_20) << bandwidth << std::endl;
}

API_CALL(aclrtSetDevice(srcId));
API_CALL(aclmdlRIDestroy(srcModelRI));
API_CALL(aclrtDestroyEvent(srcStartEvent));
API_CALL(aclrtDestroyEvent(srcEndEvent));
API_CALL(aclrtDestroyStream(srcExecStream));
API_CALL(aclrtFree(srcSend));
API_CALL(aclrtFree(srcRecv));
API_CALL(aclrtDeviceDisablePeerAccess(dstId));

API_CALL(aclrtSetDevice(dstId));
API_CALL(aclmdlRIDestroy(dstModelRI));
API_CALL(aclrtDestroyEvent(dstStartEvent));
API_CALL(aclrtDestroyEvent(dstEndEvent));
API_CALL(aclrtDestroyStream(dstExecStream));
API_CALL(aclrtFree(dstSend));
API_CALL(aclrtFree(dstRecv));
API_CALL(aclrtDeviceDisablePeerAccess(srcId));
API_CALL(aclrtResetDevice(dstId));

API_CALL(aclrtSetDevice(srcId));
API_CALL(aclrtResetDevice(srcId));

}

} // namespace

int main(int argc, char** argv)
{
int32_t srcId = 0;
int32_t dstId = 1;
if (argc == 3) {
srcId = std::stoi(argv[1]);
dstId = std::stoi(argv[2]);
} else if (argc != 1) {
std::cout << "Usage: " << argv[0] << " [src_device_id dst_device_id]" << std::endl;
return EXIT_FAILURE;
}
if (srcId == dstId) {
std::cout << "Source and destination devices must be different." << std::endl;
return EXIT_FAILURE;
}

std::cout << "Device " << srcId << " to " << dstId << std::endl;
API_CALL(aclInit(nullptr));

API_CALL(aclrtSetDevice(srcId));
int32_t canAccessPeer = 0;
API_CALL(aclrtDeviceCanAccessPeer(&canAccessPeer, srcId, dstId));
if (canAccessPeer != 1) {
    std::cout << "Device " << srcId << " cannot access peer device " << dstId << std::endl;
    API_CALL(aclrtResetDevice(srcId));
    API_CALL(aclFinalize());
    return EXIT_FAILURE;
}

ComputeUnidirectionalGraphBandwidth(srcId, dstId);
std::cout << "\n\n\n" << std::endl;
ComputeBidirectionalGraphBandwidth(srcId, dstId);

API_CALL(aclFinalize());
return EXIT_SUCCESS;

}

likedislike
guo-yanjun成员
7月27日 评论:

当前存在一个A2芯片 aclrtMemcpyAsync 异步拷贝带宽性能波动的问题,测试脚本为docs/p2p_async_acl_write.cpp,现象为PCIE4.0波动正常,将同环境PCIE协议切换到PCIE5.0之后异步拷贝波动变大,详细解读aclrtMemcpyAsync接口的代码,分析其完整数据流图,重点分析哪些地方可能会用到PCIE,分析这个性能波动问题的根因

likedislike
guo-yanjun成员
7月27日 评论:

[memory_task.cc:430] 2823274 ConvertCpyType: MemcpyAsyncTask::ConvertCpyType MEMCPY_DIR_D2D_SDMA, direct= 2

likedislike
guo-yanjun成员
7月27日 评论:

plog-3630250_20260727144616252.log:40811:[INFO] RUNTIME(3630250,p2pDemo):2026-07-27-14:46:17.972.237 [memory_task.cc:430] 3630250 ConvertCpyType: MemcpyAsyncTask::ConvertCpyType MEMCPY_DIR_D2D_SDMA, direct= 2
plog-3630250_20260727144616252.log:40812:[INFO] RUNTIME(3630250,p2pDemo):2026-07-27-14:46:17.972.238 [memory_task.cc:585] 3630250 MemcpyAsyncTaskInitV3: Init qos=0, partId=0.
plog-3630250_20260727144616252.log:40813:[INFO] RUNTIME(3630250,p2pDemo):2026-07-27-14:46:17.972.239 [memory_task.cc:616] 3630250 MemcpyAsyncTaskInitV3: CopyType=2: use virtual address directly.
plog-3630250_20260727144616252.log:40816:[INFO] RUNTIME(3630250,p2pDemo):2026-07-27-14:46:17.972.245 [memory_task.cc:1236] 3630250 ConstructSqeForMemcpyAsyncTask: MemcpyAsyncTask, stream_id=47, task_id=59998, copyType=2

likedislike
guo-yanjun成员
7月27日 评论:

rg -n
"ConstructSqe.*copyType=2|sdmaTask|pcieDmaTask|PcieDma|mem async copy error"
plog-3630250_20260727144616252.log

likedislike
guo-yanjun成员
7月27日 评论:

grep -nE
"ConstructSqe.*copyType=2|sdmaTask|pcieDmaTask|PcieDma|mem async copy error"
plog-3630250_20260727144616252.log

likedislike
guo-yanjun成员
7月27日 评论:

7:[INFO] RUNTIME(3630250,p2pDemo):2026-07-27-14:46:16.044.558 [memory_task.cc:1192] 3630250 ConstructMemcpySqe: ConstructSqe size=268435456, qos=6, partid=0, copyType=2, kernelCredit=254, dstSubStreamId=0, copyKind=3, Opcode=0x0, taskType=5.
8:[INFO] RUNTIME(3630250,p2pDemo):2026-07-27-14:46:16.044.560 [memory_task.cc:1236] 3630250 ConstructSqeForMemcpyAsyncTask: MemcpyAsyncTask, stream_id=47, task_id=59137, copyType=2

likedislike
guo-yanjun成员
7月27日 评论:

lspci -Dnn | grep -Ei 'Huawei|19e5'
sudo lspci -vv -s 0000:3b:00.0 | grep -E 'LnkCap:|LnkSta:'

likedislike
guo-yanjun成员
7月27日 评论:

lspci -Dnn | grep -Ei 'Huawei|19e5'
0000:01:00.0 VGA compatible controller [0300]: Huawei Technologies Co., Ltd. Hi1710 [iBMC Intelligent Management system chip w/VGA support] [19e5:1711] (rev 01)
0000:02:00.0 Signal processing controller [1180]: Huawei Technologies Co., Ltd. iBMA Virtual Network Adapter [19e5:1710] (rev 01)
0000:18:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:19:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:1a:00.0 Non-Volatile memory controller [0108]: Huawei Technologies Co., Ltd. Device [19e5:37d4] (rev 21)
0000:38:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:39:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:3a:00.0 Non-Volatile memory controller [0108]: Huawei Technologies Co., Ltd. Device [19e5:37d4] (rev 21)
0000:48:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:49:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:4b:00.0 Non-Volatile memory controller [0108]: Huawei Technologies Co., Ltd. Device [19e5:37d4] (rev 21)
0000:59:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:5a:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:5d:00.0 Non-Volatile memory controller [0108]: Huawei Technologies Co., Ltd. Device [19e5:37d4] (rev 21)
0000:98:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:99:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:9a:00.0 Non-Volatile memory controller [0108]: Huawei Technologies Co., Ltd. Device [19e5:37d4] (rev 21)
0000:b8:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:b9:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:ba:00.0 Non-Volatile memory controller [0108]: Huawei Technologies Co., Ltd. Device [19e5:37d4] (rev 21)
0000:c8:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:c9:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:cb:00.0 Non-Volatile memory controller [0108]: Huawei Technologies Co., Ltd. Device [19e5:37d4] (rev 21)
0000:d9:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:da:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:dc:00.0 Non-Volatile memory controller [0108]: Huawei Technologies Co., Ltd. Device [19e5:37d4] (rev 21)

likedislike
guo-yanjun成员
7月27日 评论:

sudo lspci -Dvv -d 19e5:d802 |
grep -E '[1]{4}:|LnkCap:|LnkSta:'


  1. [:xdigit:] ↩︎

likedislike
guo-yanjun成员
7月27日 评论:

sudo lspci -Dvv -d 19e5:d802 |
grep -E '[1]{4}:|LnkCap:|LnkSta:'

sudo lspci -vv -s 0000:18:00.0 | grep -E 'LnkCap:|LnkSta:'

for dev in $(lspci -Dnn -d 19e5:d802 | awk '{print 1}'); do echo "dev"
cat "/sys/bus/pci/devices/dev/currentlinkspeed"cat"/sys/bus/pci/devices/dev/current_link_speed" cat "/sys/bus/pci/devices/dev/current_link_width"
done


  1. [:xdigit:] ↩︎

likedislike
guo-yanjun成员
7月27日 评论:

sudo lspci -Dvv -d 19e5:d802 |

grep -E '[1]{4}:|LnkCap:|LnkSta:'
0000:18:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d802 (rev 20)
LnkCap: Port #0, Speed unknown, Width x16, ASPM L0s L1, Exit Latency L0s <4us, L1 <8us
LnkSta: Speed unknown, Width x8, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
0000:19:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d802 (rev 20)
LnkCap: Port #0, Speed unknown, Width x16, ASPM L0s L1, Exit Latency L0s <4us, L1 <8us
LnkSta: Speed unknown, Width x8, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
0000:38:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d802 (rev 20)
LnkCap: Port #0, Speed unknown, Width x16, ASPM L0s L1, Exit Latency L0s <4us, L1 <8us
LnkSta: Speed unknown, Width x8, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
0000:39:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d802 (rev 20)
LnkCap: Port #0, Speed unknown, Width x16, ASPM L0s L1, Exit Latency L0s <4us, L1 <8us
LnkSta: Speed unknown, Width x8, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
0000:48:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d802 (rev 20)
LnkCap: Port #0, Speed unknown, Width x16, ASPM L0s L1, Exit Latency L0s <4us, L1 <8us
LnkSta: Speed unknown, Width x8, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
0000:49:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d802 (rev 20)
LnkCap: Port #0, Speed unknown, Width x16, ASPM L0s L1, Exit Latency L0s <4us, L1 <8us
LnkSta: Speed unknown, Width x8, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
0000:59:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d802 (rev 20)
LnkCap: Port #0, Speed unknown, Width x16, ASPM L0s L1, Exit Latency L0s <4us, L1 <8us
LnkSta: Speed unknown, Width x8, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
0000:5a:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d802 (rev 20)
LnkCap: Port #0, Speed unknown, Width x16, ASPM L0s L1, Exit Latency L0s <4us, L1 <8us
LnkSta: Speed unknown, Width x8, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
0000:98:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d802 (rev 20)
LnkCap: Port #0, Speed unknown, Width x16, ASPM L0s L1, Exit Latency L0s <4us, L1 <8us
LnkSta: Speed unknown, Width x8, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
0000:99:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d802 (rev 20)
LnkCap: Port #0, Speed unknown, Width x16, ASPM L0s L1, Exit Latency L0s <4us, L1 <8us
LnkSta: Speed unknown, Width x8, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
0000:b8:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d802 (rev 20)
LnkCap: Port #0, Speed unknown, Width x16, ASPM L0s L1, Exit Latency L0s <4us, L1 <8us
LnkSta: Speed unknown, Width x8, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
0000:b9:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d802 (rev 20)
LnkCap: Port #0, Speed unknown, Width x16, ASPM L0s L1, Exit Latency L0s <4us, L1 <8us
LnkSta: Speed unknown, Width x8, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
0000:c8:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d802 (rev 20)
LnkCap: Port #0, Speed unknown, Width x16, ASPM L0s L1, Exit Latency L0s <4us, L1 <8us
LnkSta: Speed unknown, Width x8, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
0000:c9:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d802 (rev 20)
LnkCap: Port #0, Speed unknown, Width x16, ASPM L0s L1, Exit Latency L0s <4us, L1 <8us
LnkSta: Speed unknown, Width x8, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
0000:d9:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d802 (rev 20)
LnkCap: Port #0, Speed unknown, Width x16, ASPM L0s L1, Exit Latency L0s <4us, L1 <8us
LnkSta: Speed unknown, Width x8, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
0000:da:00.0 Processing accelerators: Huawei Technologies Co., Ltd. Device d802 (rev 20)
LnkCap: Port #0, Speed unknown, Width x16, ASPM L0s L1, Exit Latency L0s <4us, L1 <8us
LnkSta: Speed unknown, Width x8, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
You have mail in /var/spool/mail/root


  1. [:xdigit:] ↩︎

likedislike
guo-yanjun成员
7月27日 评论:

sudo lspci -vv -s 0000:18:00.0 | grep -E 'LnkCap:|LnkSta:'
LnkCap: Port #0, Speed unknown, Width x16, ASPM L0s L1, Exit Latency L0s <4us, L1 <8us
LnkSta: Speed unknown, Width x8, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-

likedislike
guo-yanjun成员
7月27日 评论:

for dev in $(lspci -Dnn -d 19e5:d802 | awk '{print $1}'); do

echo "$dev"
cat "/sys/bus/pci/devices/$dev/current_link_speed"
cat "/sys/bus/pci/devices/$dev/current_link_width"

done
0000:18:00.0
Unknown speed
8
0000:19:00.0
Unknown speed
8
0000:38:00.0
Unknown speed
8
0000:39:00.0
Unknown speed
8
0000:48:00.0
Unknown speed
8
0000:49:00.0
Unknown speed
8
0000:59:00.0
Unknown speed
8
0000:5a:00.0
Unknown speed
8
0000:98:00.0
Unknown speed
8
0000:99:00.0
Unknown speed
8
0000:b8:00.0
Unknown speed
8
0000:b9:00.0
Unknown speed
8
0000:c8:00.0
Unknown speed
8
0000:c9:00.0
Unknown speed
8
0000:d9:00.0
Unknown speed
8
0000:da:00.0
Unknown speed
8

likedislike
guo-yanjun成员
7月27日 评论:

for dev in $(lspci -Dnn -d 19e5:d802 | awk '{print 1}'); do cap=(sudo setpci -s "dev"CAPEXP+0c.L)sta=dev" CAP_EXP+0c.L) sta=(sudo setpci -s "$dev" CAP_EXP+12.W)

max_code=$((0x$cap & 0xf))
max_width=$(((0x$cap >> 4) & 0x3f))
cur_code=$((0x$sta & 0xf))
cur_width=$(((0x$sta >> 4) & 0x3f))

printf '%s: max_code=%d x%d, current_code=%d x%d\n' \
    "$dev" "$max_code" "$max_width" "$cur_code" "$cur_width"

done

likedislike
guo-yanjun成员
7月27日 评论:

0000:18:00.0: max_code=5 x16, current_code=5 x8
0000:19:00.0: max_code=5 x16, current_code=5 x8
0000:38:00.0: max_code=5 x16, current_code=5 x8
0000:39:00.0: max_code=5 x16, current_code=5 x8
0000:48:00.0: max_code=5 x16, current_code=5 x8
0000:49:00.0: max_code=5 x16, current_code=5 x8
0000:59:00.0: max_code=5 x16, current_code=5 x8
0000:5a:00.0: max_code=5 x16, current_code=5 x8
0000:98:00.0: max_code=5 x16, current_code=5 x8
0000:99:00.0: max_code=5 x16, current_code=5 x8
0000:b8:00.0: max_code=5 x16, current_code=5 x8
0000:b9:00.0: max_code=5 x16, current_code=5 x8
0000:c8:00.0: max_code=5 x16, current_code=5 x8
0000:c9:00.0: max_code=5 x16, current_code=5 x8
0000:d9:00.0: max_code=5 x16, current_code=5 x8
0000:da:00.0: max_code=5 x16, current_code=5 x8
You have mail in /var/spool/mail/root

likedislike
guo-yanjun成员
7月28日 评论:

lstopo-no-graphics --whole-io

likedislike
guo-yanjun成员
7月28日 评论:

lscpu -e=CPU,NODE,SOCKET,CORE,ONLINE
numactl --hardware
lspci -Dtv

likedislike
guo-yanjun成员
7月28日 评论:

lspci -Dtv
-+-[0000:00]-+-00.0-[01]----00.0 Huawei Technologies Co., Ltd. Device d802
| +-08.0-[02]----00.0 Huawei Technologies Co., Ltd. Device d802
| +-10.0-[03]----00.0 Huawei Technologies Co., Ltd. Hi171x Series [iBMC Intelligent Management system chip w/VGA support]
| +-11.0-[04]----00.0 Huawei Technologies Co., Ltd. iBMA Virtual Network Adapter
| -12.0-[05]----00.0 Huawei Technologies Co., Ltd. Device 3758
+-[0000:34]-+-01.0-[36]--
| +-02.0 Huawei Technologies Co., Ltd. HiSilicon SAS 3.0 HBA
| +-03.0 Huawei Technologies Co., Ltd. HiSilicon AHCI HBA
| -04.0 Huawei Technologies Co., Ltd. HiSilicon SAS 3.0 HBA
+-[0000:3a]-+-00.0 Huawei Technologies Co., Ltd. HiSilicon USB 1.1 Host Controller
| +-01.0 Huawei Technologies Co., Ltd. HiSilicon USB 2.0 2-port Host Controller
| -02.0 Huawei Technologies Co., Ltd. HiSilicon USB 3.0 Host Controller
+-[0000:3c]---00.0-[3d]--+-00.0 Huawei Technologies Co., Ltd. HNS GE/10GE/25GE RDMA Network Controller
| +-00.1 Huawei Technologies Co., Ltd. HNS GE/10GE/25GE Network Controller
| +-00.2 Huawei Technologies Co., Ltd. HNS GE/10GE/25GE RDMA Network Controller
| -00.3 Huawei Technologies Co., Ltd. HNS GE/10GE/25GE Network Controller
+-[0000:40]-+-00.0-[41]----00.0 Huawei Technologies Co., Ltd. Device d802
| +-08.0-[42]----00.0 Huawei Technologies Co., Ltd. Device d802
| -10.0-[43]--+-00.0 Mellanox Technologies MT27800 Family [ConnectX-5]
| -00.1 Mellanox Technologies MT27800 Family [ConnectX-5]
+-[0000:74]-+-01.0-[76]--
| +-02.0 Huawei Technologies Co., Ltd. HiSilicon SAS 3.0 HBA
| +-03.0 Huawei Technologies Co., Ltd. HiSilicon AHCI HBA
| -04.0 Huawei Technologies Co., Ltd. HiSilicon SAS 3.0 HBA
+-[0000:7a]-+-00.0 Huawei Technologies Co., Ltd. HiSilicon USB 1.1 Host Controller
| +-01.0 Huawei Technologies Co., Ltd. HiSilicon USB 2.0 2-port Host Controller
| -02.0 Huawei Technologies Co., Ltd. HiSilicon USB 3.0 Host Controller
+-[0000:7c]---00.0-[7d]--
+-[0000:80]-+-00.0-[81]----00.0 Huawei Technologies Co., Ltd. Device d802
| +-08.0-[82]----00.0 Huawei Technologies Co., Ltd. Device d802
| +-10.0-[83]----00.0 Huawei Technologies Co., Ltd. ES3000 V6 NVMe PCIe SSD
| -12.0-[84]----00.0 Huawei Technologies Co., Ltd. ES3000 V6 NVMe PCIe SSD
+-[0000:b4]-+-01.0-[b6]--
| +-02.0 Huawei Technologies Co., Ltd. HiSilicon SAS 3.0 HBA
| +-03.0 Huawei Technologies Co., Ltd. HiSilicon AHCI HBA
| -04.0 Huawei Technologies Co., Ltd. HiSilicon SAS 3.0 HBA
+-[0000:ba]-+-00.0 Huawei Technologies Co., Ltd. HiSilicon USB 1.1 Host Controller
| +-01.0 Huawei Technologies Co., Ltd. HiSilicon USB 2.0 2-port Host Controller
| -02.0 Huawei Technologies Co., Ltd. HiSilicon USB 3.0 Host Controller
+-[0000:bc]---00.0-[bd]--+-00.0 Huawei Technologies Co., Ltd. HNS GE/10GE/25GE RDMA Network Controller
| +-00.1 Huawei Technologies Co., Ltd. HNS GE/10GE/25GE Network Controller
| +-00.2 Huawei Technologies Co., Ltd. HNS GE/10GE/25GE RDMA Network Controller
| -00.3 Huawei Technologies Co., Ltd. HNS GE/10GE/25GE Network Controller
+-[0000:c0]-+-00.0-[c1]----00.0 Huawei Technologies Co., Ltd. Device d802
| +-08.0-[c2]----00.0 Huawei Technologies Co., Ltd. Device d802
| -10.0-[c3]--+-00.0 Mellanox Technologies MT27800 Family [ConnectX-5]
| -00.1 Mellanox Technologies MT27800 Family [ConnectX-5]
+-[0000:f4]-+-01.0-[f6]--
| +-02.0 Huawei Technologies Co., Ltd. HiSilicon SAS 3.0 HBA
| +-03.0 Huawei Technologies Co., Ltd. HiSilicon AHCI HBA
| -04.0 Huawei Technologies Co., Ltd. HiSilicon SAS 3.0 HBA
+-[0000:fa]-+-00.0 Huawei Technologies Co., Ltd. HiSilicon USB 1.1 Host Controller
| +-01.0 Huawei Technologies Co., Ltd. HiSilicon USB 2.0 2-port Host Controller
| -02.0 Huawei Technologies Co., Ltd. HiSilicon USB 3.0 Host Controller
-[0000:fc]---00.0-[fd]--

likedislike
guo-yanjun成员
7月28日 评论:

for dev in $(lspci -Dnn -d 19e5:d802 | awk '{print 1}'); do node=(cat "/sys/bus/pci/devices/$dev/numa_node")

if [ "$node" -ge 0 ] &&
   [ -r "/sys/devices/system/node/node${node}/cpulist" ]; then
    cpus=$(cat "/sys/devices/system/node/node${node}/cpulist")
else
    cpus=$(cat "/sys/bus/pci/devices/$dev/local_cpulist" 2>/dev/null)
    [ -n "$cpus" ] || cpus="unknown"
fi

printf '%-14s NUMA=%-3s LocalCPUs=%s\n' \
    "$dev" "$node" "$cpus"

done

likedislike
guo-yanjun成员
7月28日 评论:

0000:01:00.0 NUMA=0 LocalCPUs=0-31
0000:02:00.0 NUMA=0 LocalCPUs=0-31
0000:41:00.0 NUMA=2 LocalCPUs=64-95
0000:42:00.0 NUMA=2 LocalCPUs=64-95
0000:81:00.0 NUMA=4 LocalCPUs=128-159
0000:82:00.0 NUMA=4 LocalCPUs=128-159
0000:c1:00.0 NUMA=6 LocalCPUs=192-223
0000:c2:00.0 NUMA=6 LocalCPUs=192-223

likedislike
guo-yanjun成员
7月28日 评论:

first_bdf=$(lspci -Dnn -d 19e5:d802 | awk 'NR==1 {print 1}') sudo cat "/sys/bus/pci/devices/first_bdf/devdrv_sysfs_bdf_to_devid"

likedislike
guo-yanjun成员
7月28日 评论:

[root@localhost ~]# first_bdf=$(lspci -Dnn -d 19e5:d802 | awk 'NR==1 {print 1}') [root@localhost ~]# sudo cat "/sys/bus/pci/devices/first_bdf/devdrv_sysfs_bdf_to_devid"
bdf udevid add_id
c1:00.0 0 0
c2:00.0 1 1
81:00.0 2 2
82:00.0 3 3
01:00.0 4 4
02:00.0 5 5
41:00.0 6 6
42:00.0 7 7

likedislike
guo-yanjun成员
7月30日 评论:

/*
g++ -o p2pGraphDemo p2p_async_acl_graph.cpp
-I/usr/local/Ascend/ascend-toolkit/latest/include/
-L/usr/local/Ascend/ascend-toolkit/latest/lib64/
-lascendcl -std=c++11
*/

#include "acl/acl.h"

#include
#include
#include
#include
#include
#include <unistd.h>

#define API_CALL(func)
do {
const auto ret = (func);
if (ret != ACL_SUCCESS) {
std::cout << "call " << #func << " failed, ret = " << ret << std::endl;
std::exit(EXIT_FAILURE);
}
} while (0)

namespace {

constexpr size_t SIZE_MB = 1024U * 1024U;
constexpr size_t COPY_SIZE = 256U * SIZE_MB;
constexpr uint32_t TOTAL_COPY_NUM = 20000U;
constexpr uint32_t COPIES_PER_GRAPH = 100U;
constexpr uint32_t GRAPH_EXEC_NUM = 200U;
constexpr uint32_t SLEEP_MINUTES_BEFORE_SYNC = 5U;
constexpr uint32_t SECONDS_PER_MINUTE = 60U;

static_assert(
COPIES_PER_GRAPH * GRAPH_EXEC_NUM == TOTAL_COPY_NUM, "COPIES_PER_GRAPH * GRAPH_EXEC_NUM must equal TOTAL_COPY_NUM");

void CaptureP2pCopyGraph(void* dst, const void* src, aclrtStream stream, aclmdlRI* modelRI)
{
API_CALL(aclmdlRICaptureBegin(stream, ACL_MODEL_RI_CAPTURE_MODE_GLOBAL));
for (uint32_t i = 0; i < COPIES_PER_GRAPH; ++i) {
API_CALL(aclrtMemcpyAsync(dst, COPY_SIZE, src, COPY_SIZE, ACL_MEMCPY_DEVICE_TO_DEVICE, stream));
}
API_CALL(aclmdlRICaptureEnd(stream, modelRI));
}

void SubmitGraphExecutions(aclmdlRI modelRI, aclrtStream stream)
{
for (uint32_t i = 0; i < GRAPH_EXEC_NUM; ++i) {
API_CALL(aclmdlRIExecuteAsync(modelRI, stream));
}
}

void SleepBeforeDeviceSynchronize()
{
std::cout << "Sleep " << SLEEP_MINUTES_BEFORE_SYNC << " minutes before device synchronization." << std::endl;
uint32_t remainingSeconds = SLEEP_MINUTES_BEFORE_SYNC * SECONDS_PER_MINUTE;
while (remainingSeconds > 0U) {
remainingSeconds = sleep(remainingSeconds);
}
}

void PrintTestConfig(const char* testName, uint32_t directionNum)
{
const double dataSizeGb = static_cast(COPY_SIZE) * TOTAL_COPY_NUM * static_cast(directionNum) / 1e9;
std::cout << "" << testName << "" << std::endl;
std::cout << "Copy size: " << COPY_SIZE / SIZE_MB << " MiB" << std::endl;
std::cout << "Copies per graph: " << COPIES_PER_GRAPH << std::endl;
std::cout << "Graph executions: " << GRAPH_EXEC_NUM << std::endl;
std::cout << "Total copies per direction: " << TOTAL_COPY_NUM << std::endl;
std::cout << "Total data: " << dataSizeGb << " GB" << std::endl;
}

void ComputeUnidirectionalBandwidth(int32_t srcId, int32_t dstId)
{
API_CALL(aclrtSetDevice(srcId));
API_CALL(aclrtDeviceEnablePeerAccess(dstId, 0));
void* srcDev = nullptr;
API_CALL(aclrtMalloc(&srcDev, COPY_SIZE, ACL_MEM_TYPE_HIGH_BAND_WIDTH));
API_CALL(aclrtMemset(srcDev, COPY_SIZE, 'a', COPY_SIZE));

API_CALL(aclrtSetDevice(dstId));
API_CALL(aclrtDeviceEnablePeerAccess(srcId, 0));
void* dstDev = nullptr;
API_CALL(aclrtMalloc(&dstDev, COPY_SIZE, ACL_MEM_TYPE_HIGH_BAND_WIDTH));
API_CALL(aclrtMemset(dstDev, COPY_SIZE, 'b', COPY_SIZE));

API_CALL(aclrtSetDevice(srcId));
aclrtStream stream = nullptr;
API_CALL(aclrtCreateStream(&stream));
aclmdlRI modelRI = nullptr;
CaptureP2pCopyGraph(dstDev, srcDev, stream, &modelRI);

PrintTestConfig("ACL Graph Unidirectional P2P", 1U);
SubmitGraphExecutions(modelRI, stream);

SleepBeforeDeviceSynchronize();
// 所有任务提交完成后仅同步一次,确保后续可以安全释放Graph和显存资源。
API_CALL(aclrtSynchronizeDevice());
std::cout << "Unidirectional graph executions completed." << std::endl;

API_CALL(aclmdlRIDestroy(modelRI));
API_CALL(aclrtDestroyStream(stream));
API_CALL(aclrtFree(srcDev));
API_CALL(aclrtDeviceDisablePeerAccess(dstId));

API_CALL(aclrtSetDevice(dstId));
API_CALL(aclrtFree(dstDev));
API_CALL(aclrtDeviceDisablePeerAccess(srcId));
API_CALL(aclrtResetDevice(dstId));

API_CALL(aclrtSetDevice(srcId));
API_CALL(aclrtResetDevice(srcId));

}

void ComputeBidirectionalBandwidth(int32_t srcId, int32_t dstId)
{
API_CALL(aclrtSetDevice(srcId));
API_CALL(aclrtDeviceEnablePeerAccess(dstId, 0));
void* srcSend = nullptr;
void* srcRecv = nullptr;
API_CALL(aclrtMalloc(&srcSend, COPY_SIZE, ACL_MEM_TYPE_HIGH_BAND_WIDTH));
API_CALL(aclrtMalloc(&srcRecv, COPY_SIZE, ACL_MEM_TYPE_HIGH_BAND_WIDTH));
API_CALL(aclrtMemset(srcSend, COPY_SIZE, 'a', COPY_SIZE));
API_CALL(aclrtMemset(srcRecv, COPY_SIZE, 'b', COPY_SIZE));

API_CALL(aclrtSetDevice(dstId));
API_CALL(aclrtDeviceEnablePeerAccess(srcId, 0));
void* dstSend = nullptr;
void* dstRecv = nullptr;
API_CALL(aclrtMalloc(&dstSend, COPY_SIZE, ACL_MEM_TYPE_HIGH_BAND_WIDTH));
API_CALL(aclrtMalloc(&dstRecv, COPY_SIZE, ACL_MEM_TYPE_HIGH_BAND_WIDTH));
API_CALL(aclrtMemset(dstSend, COPY_SIZE, 'a', COPY_SIZE));
API_CALL(aclrtMemset(dstRecv, COPY_SIZE, 'b', COPY_SIZE));

API_CALL(aclrtSetDevice(srcId));
aclrtStream srcStream = nullptr;
API_CALL(aclrtCreateStream(&srcStream));
aclmdlRI srcModelRI = nullptr;
CaptureP2pCopyGraph(dstRecv, srcSend, srcStream, &srcModelRI);

API_CALL(aclrtSetDevice(dstId));
aclrtStream dstStream = nullptr;
API_CALL(aclrtCreateStream(&dstStream));
aclmdlRI dstModelRI = nullptr;
CaptureP2pCopyGraph(srcRecv, dstSend, dstStream, &dstModelRI);

PrintTestConfig("ACL Graph Bidirectional P2P", 2U);

API_CALL(aclrtSetDevice(srcId));
SubmitGraphExecutions(srcModelRI, srcStream);

API_CALL(aclrtSetDevice(dstId));
SubmitGraphExecutions(dstModelRI, dstStream);

// 两个方向在同一段休眠时间内并发执行,无需为每张设备分别休眠。
SleepBeforeDeviceSynchronize();
// 所有任务提交完成后,每张设备仅同步一次。
API_CALL(aclrtSynchronizeDevice());
API_CALL(aclrtSetDevice(srcId));
API_CALL(aclrtSynchronizeDevice());
std::cout << "Bidirectional graph executions completed." << std::endl;

API_CALL(aclmdlRIDestroy(srcModelRI));
API_CALL(aclrtDestroyStream(srcStream));

API_CALL(aclrtSetDevice(dstId));
API_CALL(aclmdlRIDestroy(dstModelRI));
API_CALL(aclrtDestroyStream(dstStream));
API_CALL(aclrtFree(dstSend));
API_CALL(aclrtFree(dstRecv));
API_CALL(aclrtDeviceDisablePeerAccess(srcId));

API_CALL(aclrtSetDevice(srcId));
API_CALL(aclrtFree(srcSend));
API_CALL(aclrtFree(srcRecv));
API_CALL(aclrtDeviceDisablePeerAccess(dstId));
API_CALL(aclrtResetDevice(srcId));

API_CALL(aclrtSetDevice(dstId));
API_CALL(aclrtResetDevice(dstId));

}

} // namespace

int main(int argc, char** argv)
{
int32_t srcId = 0;
int32_t dstId = 1;
if (argc == 3) {
srcId = std::stoi(argv[1]);
dstId = std::stoi(argv[2]);
} else if (argc != 1) {
std::cout << "Usage: " << argv[0] << " [src_device_id dst_device_id]" << std::endl;
return EXIT_FAILURE;
}

if (srcId == dstId) {
    std::cout << "Source and destination devices must be different." << std::endl;
    return EXIT_FAILURE;
}

std::cout << "Device " << srcId << " to " << dstId << std::endl;
API_CALL(aclInit(nullptr));
API_CALL(aclrtSetDevice(srcId));

int32_t canAccessPeer = 0;
API_CALL(aclrtDeviceCanAccessPeer(&canAccessPeer, srcId, dstId));
if (canAccessPeer != 1) {
    std::cout << "Device " << srcId << " cannot access peer device " << dstId << std::endl;
    API_CALL(aclrtResetDevice(srcId));
    API_CALL(aclFinalize());
    return EXIT_FAILURE;
}

ComputeUnidirectionalBandwidth(srcId, dstId);
std::cout << std::endl;
ComputeBidirectionalBandwidth(srcId, dstId);

API_CALL(aclFinalize());
return EXIT_SUCCESS;

}

likedislike
guo-yanjun成员
7月30日 评论:

./Ascend-hdk-910b-npu-driver_25.5.0_linux-x86-64.run --full --quiet
[Driver] [2026-07-30 17:33:14] [INFO]Start time: 2026-07-30 17:33:14
[Driver] [2026-07-30 17:33:14] [INFO]LogFile: /var/log/ascend_seclog/ascend_install.log
[Driver] [2026-07-30 17:33:14] [INFO]OperationLogFile: /var/log/ascend_seclog/operation.log
[Driver] [2026-07-30 17:33:15] [INFO]base version is 26.1.0.b081.
[Driver] [2026-07-30 17:33:15] [WARNING]Do not power off or restart the system during the installation/upgrade
[Driver] [2026-07-30 17:33:15] [INFO]set username and usergroup, HwHiAiUser:HwHiAiUser
[Driver] [2026-07-30 17:33:18] [INFO]driver and firmware version relationship check success
[Driver] [2026-07-30 17:33:44] [INFO]driver install type: Rebuild
[Driver] [2026-07-30 17:33:44] [INFO]Rebuilding by kernel path(/lib/modules/4.18.0/build), detail in /var/log/ascend_seclog/ascend_rebuild.log
[Driver] [2026-07-30 17:34:25] [INFO]upgradePercentage:10%
[Driver] [2026-07-30 17:34:40] [INFO]upgradePercentage:30%
[Driver] [2026-07-30 17:34:41] [INFO]upgradePercentage:40%
[Driver] [2026-07-30 17:34:42] [INFO]upgradePercentage:90%
[Driver] [2026-07-30 17:34:45] [INFO]upgradePercentage:100%
[Driver] [2026-07-30 17:34:45] [INFO]Driver package installed successfully! Reboot needed for installation/upgrade to take effect!
[Driver] [2026-07-30 17:34:46] [INFO]End time: 2026-07-30 17:34:46
[root@qingpu-910b-ip156 pkg]#
[root@qingpu-910b-ip156 pkg]#
[root@qingpu-910b-ip156 pkg]# ./Ascend-hdk-910b-npu-firmware_7.8.0.5.216.run --full --quiet
[Firmware] [2026-07-30 17:35:11] [INFO]Start time: 2026-07-30 17:35:11
[Firmware] [2026-07-30 17:35:11] [INFO]LogFile: /var/log/ascend_seclog/ascend_install.log
[Firmware] [2026-07-30 17:35:11] [INFO]OperationLogFile: /var/log/ascend_seclog/operation.log
[Firmware] [2026-07-30 17:35:11] [INFO]base version is 9.0.0.6.200.
[Firmware] [2026-07-30 17:35:11] [WARNING]Do not power off or restart the system during the installation/upgrade
[Firmware] [2026-07-30 17:37:54] [ERROR]None of the chips are up.
[Firmware] [2026-07-30 17:37:54] [INFO]End time: 2026-07-30 17:37:54
You have mail in /var/spool/mail/root

likedislike
guo-yanjun成员
7月30日 评论:

./Ascend-hdk-910b-npu-driver_26.1.0.b081_linux-x86-64.run --full --quiet
[Driver] [2026-07-30 19:04:42] [INFO]Start time: 2026-07-30 19:04:42
[Driver] [2026-07-30 19:04:42] [INFO]LogFile: /var/log/ascend_seclog/ascend_install.log
[Driver] [2026-07-30 19:04:42] [INFO]OperationLogFile: /var/log/ascend_seclog/operation.log
[Driver] [2026-07-30 19:04:42] [INFO]base version is 25.5.0.
[Driver] [2026-07-30 19:04:42] [WARNING]Do not power off or restart the system during the installation/upgrade
[Driver] [2026-07-30 19:04:43] [INFO]set username and usergroup, HwHiAiUser:HwHiAiUser
[Driver] [2026-07-30 19:04:46] [INFO]driver and firmware version relationship check success
[Driver] [2026-07-30 19:04:53] [ERROR]The davinci nodes are occupied by some processes, please stop processes and install or uninstall again, details in : /var/log/ascend_seclog/ascend_install.log
[Driver] [2026-07-30 19:04:53] [INFO]If you want to install or uninstall the driver forcibly, add the force parameter. For details, see [--help].
[Driver] [2026-07-30 19:04:53] [INFO]End time: 2026-07-30 19:04:53

likedislike
guo-yanjun成员
7月30日 评论:

grep -E "has user process|davinci.*process|occupied"
/var/log/ascend_seclog/ascend_install.log | tail -n 50

fuser -v /dev/davinci* /dev/davinci_manager /dev/devmm_svm 2>/dev/null

ps -fp
cat /proc//cgroup

likedislike
guo-yanjun成员
7月30日 评论:

grep -E "has user process|davinci.*process|occupied" \

/var/log/ascend_seclog/ascend_install.log | tail -n 50
[Driver] [2026-07-20 15:30:17] [uid=0(root)] [WARNING]proc:/dev/davinci_manager has user process: 147512
[Driver] [2026-07-30 17:33:33] [uid=0(root)] [WARNING]proc:/dev/davinci_manager has user process: 178984 179050 179052 40869 40969 40982 73570
[Driver] [2026-07-30 19:04:48] [uid=0(root)] [WARNING]proc:/dev/davinci_manager has user process: 178984 179050 179052
[Driver] [2026-07-30 19:04:50] [uid=0(root)] [WARNING]proc:/dev/davinci_manager has user process: 178984 179050 179052
[Driver] [2026-07-30 19:04:52] [uid=0(root)] [WARNING]proc:/dev/davinci_manager has user process: 178984 179050 179052
[Driver] [2026-07-30 19:04:53] [uid=0(root)] [ERROR]The davinci nodes are occupied by some processes, please stop processes and install or uninstall again.
[root@qingpu-910b-ip156 pkg]#
[root@qingpu-910b-ip156 pkg]# fuser -v /dev/davinci* /dev/davinci_manager /dev/devmm_svm 2>/dev/null
178984 179050 179052 178984 179050 179052[root@qingpu-910b-ip156 pkg]

likedislike
guo-yanjun成员
7月30日 评论:

[root@qingpu-910b-ip156 pkg]# ps -fp 178984
UID PID PPID C STIME TTY TIME CMD
root 178984 1 0 Jul21 ? 00:01:40 python3 /home/llm_after_smoke/xLlmDataDist_fmk/features/integrate_train_infer/Train_infer_PT_Layered_Transmi
[root@qingpu-910b-ip156 pkg]#
[root@qingpu-910b-ip156 pkg]# cat /proc/178984/cgroup
11:perf_event:/
10:net_cls:/
9:freezer:/
8:blkio:/user.slice
7:cpu,cpuacct:/user.slice
6:cpuset:/
5:pids:/user.slice
4:hugetlb:/
3:devices:/user.slice
2:memory:/user.slice
1:name=systemd:/user.slice/user-0.slice/session-123.scope
[root@qingpu-910b-ip156 pkg]#
[root@qingpu-910b-ip156 pkg]# ps -fp 179050
UID PID PPID C STIME TTY TIME CMD
root 179050 1 0 Jul21 ? 00:01:40 python3 /home/llm_after_smoke/xLlmDataDist_fmk/features/integrate_train_infer/Train_infer_PT_Layered_Transmi
[root@qingpu-910b-ip156 pkg]#
[root@qingpu-910b-ip156 pkg]# cat /proc/179050/cgroup
11:perf_event:/
10:net_cls:/
9:freezer:/
8:blkio:/user.slice
7:cpu,cpuacct:/user.slice
6:cpuset:/
5:pids:/user.slice
4:hugetlb:/
3:devices:/user.slice
2:memory:/user.slice
1:name=systemd:/user.slice/user-0.slice/session-123.scope
[root@qingpu-910b-ip156 pkg]#
[root@qingpu-910b-ip156 pkg]# ps -fp 179052
UID PID PPID C STIME TTY TIME CMD
root 179052 1 0 Jul21 ? 00:01:39 python3 /home/llm_after_smoke/xLlmDataDist_fmk/features/integrate_train_infer/Train_infer_PT_Layered_Transmi
[root@qingpu-910b-ip156 pkg]#
[root@qingpu-910b-ip156 pkg]# cat /proc/179052/cgroup
11:perf_event:/
10:net_cls:/
9:freezer:/
8:blkio:/user.slice
7:cpu,cpuacct:/user.slice
6:cpuset:/
5:pids:/user.slice
4:hugetlb:/
3:devices:/user.slice
2:memory:/user.slice
1:name=systemd:/user.slice/user-0.slice/session-123.scope

likedislike
guo-yanjun成员
7月30日 评论:

kill -TERM 178984 179050 179052

ps -p 178984,179050,179052 -o pid,ppid,stat,args
fuser -v /dev/davinci* /dev/davinci_manager /dev/devmm_svm 2>/dev/null

kill -KILL 178984 179050 179052

likedislike
guo-yanjun成员
7月30日 评论:

[root@qingpu-910b-ip156 pkg]# ps -p 178984,179050,179052 -o pid,ppid,stat,args
PID PPID STAT COMMAND
[root@qingpu-910b-ip156 pkg]# kill -KILL 178984 179050 179052
-bash: kill: (178984) - No such process
-bash: kill: (179050) - No such process
-bash: kill: (179052) - No such process
[root@qingpu-910b-ip156 pkg]#
[root@qingpu-910b-ip156 pkg]#
[root@qingpu-910b-ip156 pkg]# ./Ascend-hdk-910b-npu-driver_26.1.0.b081_linux-x86-64.run --full --quiet
[Driver] [2026-07-30 19:23:43] [INFO]Start time: 2026-07-30 19:23:43
[Driver] [2026-07-30 19:23:43] [INFO]LogFile: /var/log/ascend_seclog/ascend_install.log
[Driver] [2026-07-30 19:23:43] [INFO]OperationLogFile: /var/log/ascend_seclog/operation.log
[Driver] [2026-07-30 19:23:43] [INFO]base version is 25.5.0.
[Driver] [2026-07-30 19:23:43] [WARNING]Do not power off or restart the system during the installation/upgrade
[Driver] [2026-07-30 19:23:43] [INFO]set username and usergroup, HwHiAiUser:HwHiAiUser
[Driver] [2026-07-30 19:23:46] [INFO]driver and firmware version relationship check success
[Driver] [2026-07-30 19:23:53] [ERROR]The davinci nodes are occupied by some processes, please stop processes and install or uninstall again, details in : /var/log/ascend_seclog/ascend_install.log
[Driver] [2026-07-30 19:23:53] [INFO]If you want to install or uninstall the driver forcibly, add the force parameter. For details, see [--help].
[Driver] [2026-07-30 19:23:53] [INFO]End time: 2026-07-30 19:23:53
[root@qingpu-910b-ip156 pkg]# grep -E "has user process|davinci.*process|occupied" \

/var/log/ascend_seclog/ascend_install.log | tail -n 50
[Driver] [2026-07-20 15:30:17] [uid=0(root)] [WARNING]proc:/dev/davinci_manager has user process: 147512
[Driver] [2026-07-30 17:33:33] [uid=0(root)] [WARNING]proc:/dev/davinci_manager has user process: 178984 179050 179052 40869 40969 40982 73570
[Driver] [2026-07-30 19:04:48] [uid=0(root)] [WARNING]proc:/dev/davinci_manager has user process: 178984 179050 179052
[Driver] [2026-07-30 19:04:50] [uid=0(root)] [WARNING]proc:/dev/davinci_manager has user process: 178984 179050 179052
[Driver] [2026-07-30 19:04:52] [uid=0(root)] [WARNING]proc:/dev/davinci_manager has user process: 178984 179050 179052
[Driver] [2026-07-30 19:04:53] [uid=0(root)] [ERROR]The davinci nodes are occupied by some processes, please stop processes and install or uninstall again.
[Driver] [2026-07-30 19:23:09] [uid=0(root)] [ERROR]The davinci nodes are occupied by some processes, please stop processes and install or uninstall again.
[Driver] [2026-07-30 19:23:53] [uid=0(root)] [ERROR]The davinci nodes are occupied by some processes, please stop processes and install or uninstall again.

likedislike
guo-yanjun成员
7月30日 评论:

ACL_RT_ATOMIC_CAPABILITY_REDUCATION = 1U << 2, // DEPRECATED: Use ACL_RT_ATOMIC_CAPABILITY_REDUCTION
ACL_RT_ATOMIC_CAPABILITY_REDUCTION = 1U << 2,

likedislike
guo-yanjun成员
7月30日 评论:

npu-smi info
DrvMngGetConsoleLogLevel failed. (ret=4)
dcmi module initialize failed. ret is -8005

likedislike
guo-yanjun成员
7月30日 评论:

uname -r
cat /usr/local/Ascend/driver/version.info
lsmod | grep -E 'drv|davinci|ascend'
dmesg -T | grep -iE 'ascend|davinci|devdrv|signature|verification|key rejected' | tail -n 200

likedislike
guo-yanjun成员
7月30日 评论:

[root@qingpu-910b-ip156 ~]# uname -r
4.18.0
You have new mail in /var/spool/mail/root
[root@qingpu-910b-ip156 ~]#
[root@qingpu-910b-ip156 ~]#
[root@qingpu-910b-ip156 ~]# cat /usr/local/Ascend/driver/version.info
Version=25.5.0
ascendhal_version=7.35.23
aicpu_version=1.0
tdt_version=1.0
log_version=1.0
prof_version=2.0
dvppkernels_version=1.1
tsfw_version=1.0
Innerversion=V100R001C23SPC005B219
compatible_version=[V100R001C19],[V100R001C20],[V100R001C21],[V100R001C22],[V100R001C23]
compatible_version_fw=[7.0.0,8.9.9]
package_version=25.5.0
[root@qingpu-910b-ip156 ~]#
[root@qingpu-910b-ip156 ~]# lsmod | grep -E 'drv|davinci|ascend'
ascend_xsmem 204800 0
ascend_trs_sub_stars 90112 0
ascend_soc_resmng 73728 1 ascend_trs_sub_stars
drv_vpc_host 77824 0
ascend_uda 114688 1 ascend_trs_sub_stars
drv_davinci_intf_host 65536 2 ascend_uda,ascend_xsmem
ascend_logdrv 16384 6 ascend_soc_resmng,drv_vpc_host,ascend_trs_sub_stars,drv_davinci_intf_host,ascend_uda,ascend_xsmem
ascend_kernel_adapt 32768 5 drv_vpc_host,ascend_logdrv,drv_davinci_intf_host,ascend_uda,ascend_xsmem
ascend_kernel_open_adapt 45056 8 drv_vpc_host,ascend_logdrv,dbl_dev_identity,drv_davinci_intf_host,ascend_uda,dbl_algorithm,ascend_xsmem,dbl_runenv_config
drv_vascend 131072 0
drv_seclib_host 24576 8 drv_vpc_host,ascend_trs_sub_stars,ascend_logdrv,drv_davinci_intf_host,ascend_uda,debug_switch,drv_vascend,ascend_xsmem
drv_vascend_stub 24576 2 drv_vpc_host,drv_vascend
vfio_virqfd 16384 1 drv_vascend
mdev 20480 2 vfio_mdev,drv_vascend
vfio 32768 3 vfio_mdev,vfio_iommu_type1,drv_vascend
kvm 716800 2 drv_vascend,kvm_intel
[root@qingpu-910b-ip156 ~]#
[root@qingpu-910b-ip156 ~]# dmesg -T | grep -iE 'ascend|davinci|devdrv|signature|verification|key rejected' | tail -n 200
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:21 2026] ascend_soc_platform: Unknown symbol devdrv_is_mdev_vm_boot_mode (err 0)
[Thu Jul 30 20:02:21 2026] ascend_soc_platform: Unknown symbol devdrv_get_ts_drv_irq_vector_id (err 0)
[Thu Jul 30 20:02:21 2026] ascend_soc_platform: Unknown symbol devdrv_get_irq_vector (err 0)
[Thu Jul 30 20:02:21 2026] ascend_soc_platform: Unknown symbol devdrv_get_connect_protocol (err 0)
[Thu Jul 30 20:02:21 2026] ascend_soc_platform: Unknown symbol devdrv_get_addr_info (err 0)
[Thu Jul 30 20:02:21 2026] [ascend] [dbl_dev_identity] [didty_init 50] systemd-udevd:2334:2334 Module init success.
[Thu Jul 30 20:02:21 2026] [ascend] [dbl_algorithm] [calgo_init 50] systemd-udevd:2334:2334 Module init success.
[Thu Jul 30 20:02:22 2026] ascend_soc_platform: Unknown symbol devdrv_is_mdev_vm_boot_mode (err 0)
[Thu Jul 30 20:02:22 2026] ascend_soc_platform: Unknown symbol devdrv_get_ts_drv_irq_vector_id (err 0)
[Thu Jul 30 20:02:22 2026] ascend_soc_platform: Unknown symbol devdrv_get_irq_vector (err 0)
[Thu Jul 30 20:02:22 2026] ascend_soc_platform: Unknown symbol devdrv_get_connect_protocol (err 0)
[Thu Jul 30 20:02:22 2026] ascend_soc_platform: Unknown symbol devdrv_get_addr_info (err 0)
[Thu Jul 30 20:02:24 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:31 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:31 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:4177,4177 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:02:31 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:4177,4177 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:02:31 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] npu-smi:4177,4177 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:02:31 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:4185,4185 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:02:31 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:4185,4185 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:02:31 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:31 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:31 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:31 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:31 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:31 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:31 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:31 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:31 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:31 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:31 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:31 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:31 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:31 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:31 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:31 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:32 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:32 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:32 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:32 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:32 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:32 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:32 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:32 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:32 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:02:32 2026] PKCS#7 signature not signed with a trusted key
[Thu Jul 30 20:04:24 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] <npu_exporter:46147,46147> Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:04:24 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] <npu_exporter:46147,46147> set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:04:24 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] <npu_exporter:46147,46147> Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:05:07 2026] [ascend] [uda] [ERROR] [uda_wait_all_phy_startup 1342] npu-smi:4177:19:4177 Wait timeout. (dev_num=0; uda_detected_dev_num=0)
[Thu Jul 30 20:05:07 2026] [ascend] [uda] [ERROR] [uda_wait_all_phy_startup 1342] npu-smi:4200:150:4200 Wait timeout. (dev_num=0; uda_detected_dev_num=0)
[Thu Jul 30 20:05:07 2026] [ascend] [uda] [ERROR] [uda_wait_all_phy_startup 1342] npu-smi:4206:179:4206 Wait timeout. (dev_num=0; uda_detected_dev_num=0)
[Thu Jul 30 20:05:07 2026] [ascend] [uda] [ERROR] [uda_wait_all_phy_startup 1342] npu-smi:4181:176:4181 Wait timeout. (dev_num=0; uda_detected_dev_num=0)
[Thu Jul 30 20:05:07 2026] [ascend] [uda] [ERROR] [uda_wait_all_phy_startup 1342] npu-smi:4187:177:4187 Wait timeout. (dev_num=0; uda_detected_dev_num=0)
[Thu Jul 30 20:05:29 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:4187,4187 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:05:29 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:4187,4187 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:05:29 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] npu-smi:4187,4187 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:05:29 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:4183,4183 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:05:29 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:4183,4183 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:06:01 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:67649,67649 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:06:01 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:67649,67649 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:06:01 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] npu-smi:67649,67649 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:06:01 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:67649,67649 Module not init. (module_name="DMS")
[Thu Jul 30 20:06:01 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:67649,67649 set file ops failed. (module_name="DMS"; ret=-22)
[Thu Jul 30 20:06:23 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:67649,67649 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:06:23 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:67649,67649 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:06:23 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] npu-smi:67649,67649 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:06:29 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:72495,72495 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:06:29 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:72495,72495 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:06:29 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] npu-smi:72495,72495 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:06:29 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:72493,72493 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:06:29 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:72493,72493 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:06:30 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] python3:74038,74038 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:06:30 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] python3:74038,74038 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:06:30 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] python3:74038,74038 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:06:30 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] python3:74038,74038 Module not init. (module_name="DMS")
[Thu Jul 30 20:06:30 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] python3:74038,74038 set file ops failed. (module_name="DMS"; ret=-22)
[Thu Jul 30 20:06:51 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:72495,72495 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:06:51 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:72495,72495 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:06:51 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] npu-smi:72495,72495 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:06:51 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:72496,72496 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:06:51 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:72496,72496 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:06:52 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] python3:74038,74038 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:06:52 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] python3:74038,74038 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:06:52 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] python3:74038,74038 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:07:00 2026] [ascend] [uda] [ERROR] [uda_wait_all_phy_startup 1342] <npu_exporter:46147:46147:78> Wait timeout. (dev_num=0; uda_detected_dev_num=0)
[Thu Jul 30 20:07:00 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] <npu_exporter:46147,46147> Module not init. (module_name="DMS")
[Thu Jul 30 20:07:00 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] <npu_exporter:46147,46147> set file ops failed. (module_name="DMS"; ret=-22)
[Thu Jul 30 20:07:00 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] <npu_exporter:46147,46147> Init file_private failed. (module_name="DMS"; ret=-22)
[Thu Jul 30 20:07:22 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] <npu_exporter:46147,46147> Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:07:22 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] <npu_exporter:46147,46147> set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:07:22 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] <npu_exporter:46147,46147> Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:07:51 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:96748,96748 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:07:51 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:96748,96748 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:07:51 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] npu-smi:96748,96748 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:07:51 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:96746,96746 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:07:51 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:96746,96746 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:07:53 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] python3:99060,99060 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:07:53 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] python3:99060,99060 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:07:53 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] python3:99060,99060 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:07:53 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] python3:99060,99060 Module not init. (module_name="DMS")
[Thu Jul 30 20:07:53 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] python3:99060,99060 set file ops failed. (module_name="DMS"; ret=-22)
[Thu Jul 30 20:08:13 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:96748,96748 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:08:13 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:96748,96748 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:08:13 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] npu-smi:96748,96748 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:08:13 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:96747,96747 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:08:13 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:96747,96747 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:08:15 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] python3:99060,99060 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:08:15 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] python3:99060,99060 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:08:15 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] python3:99060,99060 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:08:29 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:108800,108800 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:08:29 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:108800,108800 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:08:29 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] npu-smi:108800,108800 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:08:29 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:108800,108800 Module not init. (module_name="DMS")
[Thu Jul 30 20:08:29 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:108800,108800 set file ops failed. (module_name="DMS"; ret=-22)
[Thu Jul 30 20:08:51 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:108800,108800 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:08:51 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:108800,108800 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:08:51 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] npu-smi:108800,108800 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:09:13 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:119769,119769 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:09:13 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:119769,119769 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:09:13 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] npu-smi:119769,119769 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:09:13 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:119770,119770 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:09:13 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:119770,119770 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:09:16 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] python3:122694,122694 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:09:16 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] python3:122694,122694 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:09:16 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] python3:122694,122694 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:09:16 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] python3:122694,122694 Module not init. (module_name="DMS")
[Thu Jul 30 20:09:16 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] python3:122694,122694 set file ops failed. (module_name="DMS"; ret=-22)
[Thu Jul 30 20:09:25 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] <npu_exporter:128575,128579> Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:09:25 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] <npu_exporter:128575,128579> set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:09:25 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] <npu_exporter:128575,128579> Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:09:25 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] <npu_exporter:128575,128579> Module not init. (module_name="DMS")
[Thu Jul 30 20:09:25 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] <npu_exporter:128575,128579> set file ops failed. (module_name="DMS"; ret=-22)
[Thu Jul 30 20:09:35 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:119771,119771 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:09:35 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:119771,119771 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:09:35 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] npu-smi:119771,119771 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:09:35 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:119769,119769 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:09:35 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:119769,119769 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:09:38 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] python3:122694,122694 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:09:38 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] python3:122694,122694 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:09:38 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] python3:122694,122694 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:09:47 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] <npu_exporter:128575,128579> Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:09:47 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] <npu_exporter:128575,128579> set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:09:47 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] <npu_exporter:128575,128579> Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:10:29 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:136420,136420 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:10:29 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:136420,136420 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:10:29 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] npu-smi:136420,136420 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:10:29 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:136420,136420 Module not init. (module_name="DMS")
[Thu Jul 30 20:10:29 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:136420,136420 set file ops failed. (module_name="DMS"; ret=-22)
[Thu Jul 30 20:10:35 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:142682,142682 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:10:35 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:142682,142682 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:10:35 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] npu-smi:142682,142682 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:10:35 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:142680,142680 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:10:35 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:142680,142680 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:10:39 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] python3:146261,146261 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:10:39 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] python3:146261,146261 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:10:39 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] python3:146261,146261 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:10:39 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] python3:146261,146261 Module not init. (module_name="DMS")
[Thu Jul 30 20:10:39 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] python3:146261,146261 set file ops failed. (module_name="DMS"; ret=-22)
[Thu Jul 30 20:10:51 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:136420,136420 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:10:51 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:136420,136420 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:10:51 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] npu-smi:136420,136420 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:10:57 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:142680,142680 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:10:57 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:142680,142680 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:10:57 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] npu-smi:142680,142680 Init file_private failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:10:57 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] npu-smi:142682,142682 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:10:57 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] npu-smi:142682,142682 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:11:01 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_set_file_ops 207] python3:146261,146261 Module not init. (module_name="DEVMNG")
[Thu Jul 30 20:11:01 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_init_file_private 1250] python3:146261,146261 set file ops failed. (module_name="DEVMNG"; ret=-22)
[Thu Jul 30 20:11:01 2026] [ascend] [ascend_dev] [ERROR] [drv_ascend_intf_ioctl_open_cmd 1349] python3:146261,146261 Init file_private failed. (module_name=

likedislike
guo-yanjun成员
7月30日 评论:

[root@qingpu-910b-ip156 pkg]# cat /usr/local/Ascend/firmware/version.info
Version=7.8.0.5.216
firmware_version=1.0
package_version=25.5.0
compatible_version_drv=[23.0.0,23.0.0.],[24.0,24.0.],[24.1,24.1.],[25.0,25.5.]
[root@qingpu-910b-ip156 pkg]#
[root@qingpu-910b-ip156 pkg]# cat /usr/local/Ascend/driver/version.info
Version=25.5.0
ascendhal_version=7.35.23
aicpu_version=1.0
tdt_version=1.0
log_version=1.0
prof_version=2.0
dvppkernels_version=1.1
tsfw_version=1.0
Innerversion=V100R001C23SPC005B219
compatible_version=[V100R001C19],[V100R001C20],[V100R001C21],[V100R001C22],[V100R001C23]
compatible_version_fw=[7.0.0,8.9.9]
package_version=25.5.0

likedislike
guo-yanjun成员
7月30日 评论:

/usr/local/Ascend/driver/tools/upgrade-tool
--device_index -1 --component -1 --version

/usr/local/Ascend/driver/tools/upgrade-tool
--device_index -1 --system_version

likedislike
guo-yanjun成员
7月30日 评论:

[root@qingpu-910b-ip156 pkg]# /usr/local/Ascend/driver/tools/upgrade-tool \

--device_index -1 --component -1 --version
DrvMngGetConsoleLogLevel failed. (ret=4)
Get device count failed.
Get device list failed.
You have mail in /var/spool/mail/root
[root@qingpu-910b-ip156 pkg]# /usr/local/Ascend/driver/tools/upgrade-tool
--device_index -1 --system_version
DrvMngGetConsoleLogLevel failed. (ret=4)
Get device count failed.
Get device list failed.

likedislike
guo-yanjun成员
7月30日 评论:

lspci -Dnn | grep -iE 'Huawei|19e5'

pgrep -af 'npu-smi|npu_exporter|Train_infer|xLlmDataDist'

fuser -v /dev/davinci_manager /dev/davinci[0-9]*
/dev/devmm_svm /dev/hisi_hdc 2>&1

./Ascend-hdk-910b-npu-driver_26.1.0.b081_linux-x86-64.run
--full --quiet

likedislike
guo-yanjun成员
7月30日 评论:

[root@qingpu-910b-ip156 pkg]# lspci -Dnn | grep -iE 'Huawei|19e5'
0000:01:00.0 VGA compatible controller [0300]: Huawei Technologies Co., Ltd. Hi1710 [iBMC Intelligent Management system chip w/VGA support] [19e5:1711] (rev 01)
0000:02:00.0 Signal processing controller [1180]: Huawei Technologies Co., Ltd. iBMA Virtual Network Adapter [19e5:1710] (rev 01)
0000:18:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:19:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:1a:00.0 Non-Volatile memory controller [0108]: Huawei Technologies Co., Ltd. Device [19e5:37d4] (rev 21)
0000:38:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:39:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:3a:00.0 Non-Volatile memory controller [0108]: Huawei Technologies Co., Ltd. Device [19e5:37d4] (rev 21)
0000:48:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:49:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:4b:00.0 Non-Volatile memory controller [0108]: Huawei Technologies Co., Ltd. Device [19e5:37d4] (rev 21)
0000:59:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:5a:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:5d:00.0 Non-Volatile memory controller [0108]: Huawei Technologies Co., Ltd. Device [19e5:37d4] (rev 21)
0000:98:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:99:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:9a:00.0 Non-Volatile memory controller [0108]: Huawei Technologies Co., Ltd. Device [19e5:37d4] (rev 21)
0000:b8:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:b9:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:ba:00.0 Non-Volatile memory controller [0108]: Huawei Technologies Co., Ltd. Device [19e5:37d4] (rev 21)
0000:c8:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:c9:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:cb:00.0 Non-Volatile memory controller [0108]: Huawei Technologies Co., Ltd. Device [19e5:37d4] (rev 21)
0000:d9:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:da:00.0 Processing accelerators [1200]: Huawei Technologies Co., Ltd. Device [19e5:d802] (rev 20)
0000:dc:00.0 Non-Volatile memory controller [0108]: Huawei Technologies Co., Ltd. Device [19e5:37d4] (rev 21)
You have mail in /var/spool/mail/root
[root@qingpu-910b-ip156 pkg]#
[root@qingpu-910b-ip156 pkg]# pgrep -af 'npu-smi|npu_exporter|Train_infer|xLlmDataDist'
178438 npu-smi info -l
178439 npu-smi info -l
178440 npu-smi info -l
178441 npu-smi info -m
178442 npu-smi info -l
178443 npu-smi info -l
178444 npu-smi info -l
178445 npu-smi info -m
178446 npu-smi info -l
178447 npu-smi info -l
178448 npu-smi info -l
178481 /bin/bash -c npu-smi info -m | grep 'Ascend' | wc -l
178482 npu-smi info -m
[root@qingpu-910b-ip156 pkg]#
[root@qingpu-910b-ip156 pkg]# fuser -v /dev/davinci_manager /dev/davinci[0-9]* \

/dev/devmm_svm /dev/hisi_hdc 2>&1
Specified filename /dev/davinci[0-9]* does not exist.
Specified filename /dev/devmm_svm does not exist.
Specified filename /dev/hisi_hdc does not exist.
USER PID ACCESS COMMAND
/dev/davinci_manager:
root 178517 F.... python3

likedislike
guo-yanjun成员
7月30日 评论:

/usr/local/Ascend/driver/tools/upgrade-tool
--device_index -1 --system_version

/usr/local/Ascend/driver/tools/upgrade-tool
--device_index -1 --component -1 --version

likedislike
guo-yanjun成员
7月30日 评论:

[root@qingpu-910b-ip156 ~]# /usr/local/Ascend/driver/tools/upgrade-tool \

--device_index -1 --system_version
{
Get system version(26.1.0.b081) succeed, deviceId(0)
{"device_id":0, "version":26.1.0.b081}
Get system version(26.1.0.b081) succeed, deviceId(1)
{"device_id":1, "version":26.1.0.b081}
Get system version(26.1.0.b081) succeed, deviceId(2)
{"device_id":2, "version":26.1.0.b081}
Get system version(26.1.0.b081) succeed, deviceId(3)
{"device_id":3, "version":26.1.0.b081}
Get system version(26.1.0.b081) succeed, deviceId(4)
{"device_id":4, "version":26.1.0.b081}
Get system version(26.1.0.b081) succeed, deviceId(5)
{"device_id":5, "version":26.1.0.b081}
Get system version(26.1.0.b081) succeed, deviceId(6)
{"device_id":6, "version":26.1.0.b081}
Get system version(26.1.0.b081) succeed, deviceId(7)
{"device_id":7, "version":26.1.0.b081}
Get system version(26.1.0.b081) succeed, deviceId(8)
{"device_id":8, "version":26.1.0.b081}
Get system version(26.1.0.b081) succeed, deviceId(9)
{"device_id":9, "version":26.1.0.b081}
Get system version(26.1.0.b081) succeed, deviceId(10)
{"device_id":10, "version":26.1.0.b081}
Get system version(26.1.0.b081) succeed, deviceId(11)
{"device_id":11, "version":26.1.0.b081}
Get system version(26.1.0.b081) succeed, deviceId(12)
{"device_id":12, "version":26.1.0.b081}
Get system version(26.1.0.b081) succeed, deviceId(13)
{"device_id":13, "version":26.1.0.b081}
Get system version(26.1.0.b081) succeed, deviceId(14)
{"device_id":14, "version":26.1.0.b081}
Get system version(26.1.0.b081) succeed, deviceId(15)
{"device_id":15, "version":26.1.0.b081}
}
[root@qingpu-910b-ip156 ~]#
[root@qingpu-910b-ip156 ~]# /usr/local/Ascend/driver/tools/upgrade-tool
--device_index -1 --component -1 --version
{
Get component version(7.8.0.5.216) succeed for deviceId(0), componentType(11).
{"device_id":0, "component":hboot1a, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(0), componentType(12).
{"device_id":0, "component":hboot1b, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(0), componentType(18).
{"device_id":0, "component":hlink, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(0), componentType(27).
{"device_id":0, "component":hlink2, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(1), componentType(11).
{"device_id":1, "component":hboot1a, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(1), componentType(12).
{"device_id":1, "component":hboot1b, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(1), componentType(18).
{"device_id":1, "component":hlink, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(1), componentType(27).
{"device_id":1, "component":hlink2, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(2), componentType(11).
{"device_id":2, "component":hboot1a, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(2), componentType(12).
{"device_id":2, "component":hboot1b, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(2), componentType(18).
{"device_id":2, "component":hlink, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(2), componentType(27).
{"device_id":2, "component":hlink2, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(3), componentType(11).
{"device_id":3, "component":hboot1a, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(3), componentType(12).
{"device_id":3, "component":hboot1b, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(3), componentType(18).
{"device_id":3, "component":hlink, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(3), componentType(27).
{"device_id":3, "component":hlink2, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(4), componentType(11).
{"device_id":4, "component":hboot1a, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(4), componentType(12).
{"device_id":4, "component":hboot1b, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(4), componentType(18).
{"device_id":4, "component":hlink, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(4), componentType(27).
{"device_id":4, "component":hlink2, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(5), componentType(11).
{"device_id":5, "component":hboot1a, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(5), componentType(12).
{"device_id":5, "component":hboot1b, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(5), componentType(18).
{"device_id":5, "component":hlink, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(5), componentType(27).
{"device_id":5, "component":hlink2, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(6), componentType(11).
{"device_id":6, "component":hboot1a, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(6), componentType(12).
{"device_id":6, "component":hboot1b, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(6), componentType(18).
{"device_id":6, "component":hlink, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(6), componentType(27).
{"device_id":6, "component":hlink2, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(7), componentType(11).
{"device_id":7, "component":hboot1a, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(7), componentType(12).
{"device_id":7, "component":hboot1b, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(7), componentType(18).
{"device_id":7, "component":hlink, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(7), componentType(27).
{"device_id":7, "component":hlink2, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(8), componentType(11).
{"device_id":8, "component":hboot1a, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(8), componentType(12).
{"device_id":8, "component":hboot1b, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(8), componentType(18).
{"device_id":8, "component":hlink, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(8), componentType(27).
{"device_id":8, "component":hlink2, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(9), componentType(11).
{"device_id":9, "component":hboot1a, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(9), componentType(12).
{"device_id":9, "component":hboot1b, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(9), componentType(18).
{"device_id":9, "component":hlink, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(9), componentType(27).
{"device_id":9, "component":hlink2, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(10), componentType(11).
{"device_id":10, "component":hboot1a, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(10), componentType(12).
{"device_id":10, "component":hboot1b, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(10), componentType(18).
{"device_id":10, "component":hlink, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(10), componentType(27).
{"device_id":10, "component":hlink2, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(11), componentType(11).
{"device_id":11, "component":hboot1a, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(11), componentType(12).
{"device_id":11, "component":hboot1b, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(11), componentType(18).
{"device_id":11, "component":hlink, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(11), componentType(27).
{"device_id":11, "component":hlink2, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(12), componentType(11).
{"device_id":12, "component":hboot1a, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(12), componentType(12).
{"device_id":12, "component":hboot1b, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(12), componentType(18).
{"device_id":12, "component":hlink, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(12), componentType(27).
{"device_id":12, "component":hlink2, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(13), componentType(11).
{"device_id":13, "component":hboot1a, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(13), componentType(12).
{"device_id":13, "component":hboot1b, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(13), componentType(18).
{"device_id":13, "component":hlink, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(13), componentType(27).
{"device_id":13, "component":hlink2, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(14), componentType(11).
{"device_id":14, "component":hboot1a, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(14), componentType(12).
{"device_id":14, "component":hboot1b, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(14), componentType(18).
{"device_id":14, "component":hlink, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(14), componentType(27).
{"device_id":14, "component":hlink2, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(15), componentType(11).
{"device_id":15, "component":hboot1a, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(15), componentType(12).
{"device_id":15, "component":hboot1b, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(15), componentType(18).
{"device_id":15, "component":hlink, "version":7.8.0.5.216}
Get component version(7.8.0.5.216) succeed for deviceId(15), componentType(27).
{"device_id":15, "component":hlink2, "version":7.8.0.5.216}
}
[root@qingpu-910b-ip156 ~]#

likedislike
guo-yanjun成员
8月6日 评论:

git mm help
A command line tool for centralized Git workflow.

Just like repo for the Android world, git-mm is a command line tool for
centralized Git workflow of Git core.

It can handle multiple repositories by using a manifest repository with
a default.xml file. And it can also handle a single repository by using
a --single option.

Usage:
git-mm [command] [flags]
git-mm [command]

Available Commands:
abandon Remove merged or published feature branch
cherry-pick Cherry-pick a change from one branch to another
completion Generate the autocompletion script for the specified shell
config Get or set global options such as snapshot plugins, speedup nodes, etc
credential An AES encrypted Git credential helper
debug Developer defined debug utilities, for internal use only
diff Show changes between HEAD commit and working tree
download Download commits of a merge request (MR) or change request (CR)
forall Run a shell command in each project
help Help about any command
info Get info on the manifest branch, current branch or unmerged branches
init Initialize a manifest repository checkout in the current directory
list List projects and their associated directories
manifest Manifest inspection utility
reset Reset the working directories the specified state
revert Revert committed changes of a super MR or change-id
review Upload changes or merge requests for code review
start Start a new branch for development
status Show the status of working tree
sync Update working tree to the latest revision
upgrade Download and install the latest version of git-mm
upload Upload changes or merge requests for code review
version Display the version of git-mm

Flags:
-C, --dir string run as if git-mm was started in instead of the current working directory
--git-path string Git binary path
-h, --help help for git-mm
-q, --quiet quiet mode, controls whether verbose Git commands' output
--root-dir show the root directory of the current manifest project
--timeout string command execution timeout, set with s/m/h suffix (default is no timeout)
--trace output trace messages
--verbose opposite to --quiet
-v, --verbosity-level count terminal log verbosity level (default INFO, -v for DEBUG, -vv for TRACE)
--version show git-mm version
-y, --yes automatically answer yes to terminal questions

Use "git-mm [command] --help" for more information about a command.

likedislike
guo-yanjun成员
8月8日 评论:
guo-yanjun成员
8月8日 评论:

PCIe(PCI Express)是一种高速、点对点、串行总线,主要用于连接 CPU/芯片组与 GPU、NVMe SSD、网卡、AI 加速卡等设备。PCIe 4.0 和 PCIe 5.0 的核心区别是:PCIe 5.0 的链路速率和理论带宽是 PCIe 4.0 的两倍。

likedislike
guo-yanjun成员
8月8日 评论:

物理CPU
↓ 包含
CPU Core / 逻辑CPU
↓ 被划入
NUMA节点
├── 一组逻辑CPU
├── 本地内存
└── 亲和PCIe设备/NPU

CPU Affinity
├── 对进程:允许线程在哪些逻辑CPU上运行
└── 对NPU:哪些逻辑CPU与该NPU物理距离较近

likedislike
guo-yanjun成员
8月8日 评论:

典型输出:
available: 2 nodes (0-1)
node 0 cpus: 0-47 96-143
node 0 size: 256000 MB
node 1 cpus: 48-95 144-191
node 1 size: 256000 MB

node distances:
node 0 1
0: 10 20
1: 20 10
其中:
node 0 cpus:属于 NUMA 0 的逻辑 CPU
node 1 cpus:属于 NUMA 1 的逻辑 CPU
node distances:节点间相对距离,数值越小越近
距离 10 通常表示本地,20 表示远端,但它不是纳秒值

likedislike
guo-yanjun成员
8月8日 评论:

可以用下面的命令查看 Socket 与 NUMA 的对应关系:
lscpu -e=CPU,SOCKET,NODE,CORE
典型输出:
CPU SOCKET NODE CORE
0 0 0 0
1 0 0 1
32 0 1 0
33 0 1 1
64 1 2 0
CPU 0 和 CPU 32 的 SOCKET 都是 0,但 NODE 分别是 0 和 1,因此它们属于同一物理 CPU、不同 NUMA 域。

likedislike
guo-yanjun成员
8月8日 评论: