Basic
- 片上异构: 16 CPU + 4 DSP Cluster
- DSP Cluster 包含24个核心,每四个核心组成一个超节点(超节点内支持硬件快速同步)
- CPU 与 DSP之间共享的片上缓存为6MB
- 每个核心内包含两个计算单元SPU与VPU分别用来处理标量操作和向量操作
- SPU: 片上缓存为64KB。VPU(支持16位数的操作): 片上缓存为768KB。
Question
- 对于lvector double 该如何进行赋值?
1
2
|
lvector double a;
a = 4;
|
- lvector double 支持与标量直接相乘吗 ?
1
2
|
lvector double a;
a = a * 3;
|
- 当scalar_malloc中的size为0时返回的是什么?
1
2
|
int length = 0;
double* A_sm = scalar_malloc(length * sizeof(double));
|
-
如何使用读写锁?
-
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
将行向量与矩阵进行点乘,可以按照上图进行分块计算之后,再将中间向量结果相加即可。