跳到正文
Go back

一点思考与规划

编辑此页

目前可做的任务有:

  1. 验证32bits系统的正确性。(double rescale)
  2. 实现高维度的NTT:16K\32K\64K维度
  3. 使用mma指令取代WMMA指令的实现NTT,优化访存,以及bank conflict\ncu分析等
  4. 向范师兄讨论优化提升点
  5. 小维度NTT实现,即小规模参数下的FHE评估,例如模数取小加上维度取小。这里小维度NTT可以探索使用更小规模的mma指令进行实现?以及32-radix蝶形拆为4 * 8 的两步蝶形实现?
  6. 测试一下twist版本的NTT实现性能(即Warpdrive里的实现),看看转置等步骤的应用。
  7. 优化NTT,如不使用SMEM、优化访存、优化实现算法、NCU分析等。
  8. 对于32bits系统的TCU,似乎可以实现24bits以下的素数NTT?而不是28bits?这样可以减少计算量。例如对于40bits的素数,可以等效替换为23 + 23。
  9. 可以看看其它开源的源码实现,如phantom、openfhe等。
  10. 合理利用AI coder工具,但不要太过依赖,建议二八开。

一些想法:

  1. 使用TCU加速向量加法。CUDA core 和 TCU 并行加速…

编辑此页
Share this post on:

Next Post
密钥切换 - hybrid Approach