- 授权协议: BSD
- 开发语言: Python
- 操作系统: 跨平台
- 软件首页: https://github.com/Maratyszcza/PeachPy
- 软件文档: https://github.com/Maratyszcza/PeachPy/blob/master/README.rst
- 官方下载: https://github.com/Maratyszcza/PeachPy/archive/master.zip
软件介绍
PeachPy 是一个用于编写高性能汇编内核的 Python 框架,可在汇编中编写模块。 它自动化了一些细节,并允许使用 Python 生成重复的汇编代码序列。
PeachPy 旨在简化编写优化的汇编内核,同时保留传统的汇编所有优化机会。一些特性:
用于 Windows,Unix 和 Golang 程序集的通用汇编语法.
PeachPy 可以直接生成 ELF,MS COFF 和 Mach-O 对象文件以及 Golang 工具链的汇编列表
自动适应不同的调用约定和 ABIs
用于不同平台的功能可以从汇编相同的源生成
支持 Microsoft x64 ABI, System V x86-64 ABI (Linux 和 OS X), Linux x32 ABI, Native Client x86-64 SFI ABI, Golang AMD64 ABI, Golang AMD64p32 ABI
自动分配寄存器
PeachPy 是灵活的,而且允许在同一代码中混合自动分配寄存器和硬编码寄存器
汇编编程中常规任务的自动化:
函数 prolog 和 epilog 由 PeachPy 生成
数据常量的重复数据删除 (e.g. Constant.float32x4(1.0))
分析在函数中使用的 ISA 扩展
支持 x86-64 指令,最高可达 AVX-512 和 SHA
包含 3dnow!+, XOP, FMA3, FMA4, TBM 和 BMI2.
不包括 x87 FPU 和大多数系统指令
使用自动生成的测试 auto-generated tests 进行严格测试,以生成与 binutils 相同的操作码
自动生成元数据文件
具有模块依赖性的Makefile (-MMD 和-MF 选项)
C 头文件生成的函数
JSON 格式的函数元数据
基于 Python 的元编程和代码生成
多个指令流的复用(有助于软件流水线)
兼容 Python 2 和 Python 3,CPython 和 PyPy
在线 DEMO: PeachPy.IO
JavaScript Patterns
Stoyan Stefanov / O'Reilly Media, Inc. / 2010-09-21 / USD 29.99
What's the best approach for developing an application with JavaScript? This book helps you answer that question with numerous JavaScript coding patterns and best practices. If you're an experienced d......一起来看看 《JavaScript Patterns》 这本书的介绍吧!
