欢迎浏览

简介

MATXScript(Matx) 是一个高性能可扩展的 Python 编译器,可以自动化把 Python 类或函数翻译成 C++,运行时完全没有 Python 开销。在一些典型的场景中,通常可以获得 10-100 倍的性能提升。另外,Matx 通过 pmap 原语支持无锁多线程,在上面基础上,还可以进一步提升性能。

当前,Matx 已在字节跳动广泛使用,包括:

  1. 实现了模型的训推一体

  2. 加速一些 MapReduce 任务

  3. 为一些 C++ 引擎提供灵活逻辑热加载能力等等

简单示例

import matx
import timeit

def fib(n: int) -> int:
    if n <= 1:
        return n
    else:
        return fib(n - 1) + fib(n - 2)


if __name__ == '__main__':
    fib_script = matx.script(fib)

    # test on Macbook with m1 chip
    print(f'Python execution time: {timeit.timeit(lambda: fib(30), number=10)}s')  # 1.59s
    print(f'Matx execution time: {timeit.timeit(lambda: fib_script(30), number=10)}s') # 0.03s

索引页面

Languages: English 中文