Download FFmpeg 不用镜像,下载源码也很快。

     所列文件总数:
             156 个文件      2,097,608 字节
               0 个目录 63,336,206,336 可用字节

D:\ffmpeg>dir *.asm /s

写了个很土的python程序:

import glob
import re
s = set()
p = re.compile('[a-zA-Z]+')
#print(p.match('vp9_%4_ymm_1d'))
for filename in glob.glob("d:/ffmpeg/**/*.asm", recursive=True):
    with open(filename, 'r') as file:
        for line in file:
            try:
                x = line.split(maxsplit=1)[0]
                #if p.fullmatch(x): s.add(x.lower())
                if x.isalpha(): s.add(x.lower())
            except Exception: pass
for x in s: print(x)

虽然我的电脑很旧了,但一敲回车程序就跑完了。输出是415行:

...
posrotateshuf # 应该不是指令
cmovs # The cmovs conditional move if sign check the state of SF.
vaddps # the old two-operand Intel SSE instruction ADDPS xmm1, xmm2/m128can now be expressed in three-operand syntax as VADDPS
butterfly # 好像IDCT里有个操作叫这个名字,不是指令
movx # https://stackoverflow.com/questions/33268906/how-does-movsx-assembly-instruction-work
pabsw #  PABSB/W/D computes the absolute value of each data element of the source operand...
...

请注意,那些.asm里有g722, h263等没用的,有aac, ac3, h264, hevc等有用的。.asm文件都在*/x86目录下。

直白地说:我觉得LoongArch很厉害,但似乎有一点点跑偏了。推出了再撤回也不合适。再开个低端型号,RISC-V+ffmpeg加速(不超过415条指令),大cache, 高主频,低耗电,NVMe SSD, USB 3.0, 2D显卡,台式机/笔记本,UOS/麒麟,办公上网学习用,如何?千兆位有线、WiFi5应该够了。浮点用软件算应该也够了,或者用微码实现,如fmul拆成微码执行,耗时1微秒,先省电路和电(台式机用笔记本CPU),以后再优化。

posted on 2022-03-08 21:09  华容道专家  阅读(99)  评论(0)    收藏  举报