MT Note

本文记录关于MT相关的笔记

Basic

  • 片上异构: 16 CPU + 4 DSP Cluster
  • DSP Cluster 包含24个核心,每四个核心组成一个超节点(超节点内支持硬件快速同步)
  • CPU 与 DSP之间共享的片上缓存为6MB
  • 每个核心内包含两个计算单元SPU与VPU分别用来处理标量操作和向量操作
  • SPU: 片上缓存为64KB。VPU(支持16位数的操作): 片上缓存为768KB。

Question

  1. 对于lvector double 该如何进行赋值?
1
2
lvector double a;
a = 4;
  1. lvector double 支持与标量直接相乘吗 ?
1
2
lvector double a;
a = a * 3;
  1. 当scalar_malloc中的size为0时返回的是什么?
1
2
int length = 0;
double* A_sm = scalar_malloc(length * sizeof(double));
  1. 如何使用读写锁?

  2. initial a array of lvector double* to zero

1
2
lvector double* tmp_res = vector_malloc(rectified_len * sizeof(double));
memset(tmp_res, 0, rectified_len * sizeof(double));

Math calculation

vector dot product matrix

将行向量与矩阵进行点乘,可以按照上图进行分块计算之后,再将中间向量结果相加即可。

updatedupdated2021-11-062021-11-06