lsyxiaopang / lsyxiaopang/C_sim

5.27对现有进度与问题的整理

Open
#1 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
0
Forks
0
PR merge metrics
No merged PRs in 30d

Description

有关用词的确定

在测试中,由于实现所在的架构区别,导致系统的实现可能存在技术上差别,为了方便讨论,我们在此确定各个用词的定义

有关数字精度问题

  • 量化 :将系统中各个参数的作用变为整数作用,并且使用移位方法代替乘/除发运算
  • 浮点精度:系统在基于非量化的前提下,使用float或者是double表示浮点数的精度
  • 截断量化的基础上,对Sigmoid函数进行简化,其简化方式如下图所示
Image

有关SFA优化问题

$$\beta=(1-\alpha_n)\beta_0$$
$$\alpha_{n+1}=A\alpha_{n}+(1-A)k\sigma(n)$$

  • SFA/BM:表示是否开启SFA优化的BM
  • SFA极限:表示是否对SFA有最大值,即在递推式中的k

有关实现平台的问题

  • python实现:基于徐海杰的python代码实现的最原始情况,可以认为是标准结果(不受到数字位宽影响),但是计算非常缓慢
  • C实现:基于C语言的一种实现,可以模拟有无量化有无截断不同精度的影响,但是可能受到精度+数字位宽的影响,计算较为迅速(不能超过30位)
  • FPGA实现:基于FPGA的一种实现,该实现方式**只能处理有量化+有截断**的情况,但是可以处理消除精度与数字位宽的影响,计算较为迅速(没有位数限制)

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No file, test, or entry point is named. First confirm whether this issue is intended to become project documentation, then review the listed terminology, formulas, and implementation-platform distinctions with the maintainers; it is done when the definitions and scope are agreed and recorded in a specified location.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, python
Domain
documentation
Issue type
Documentation
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.