From 5f263f29dd389b2f39428acc1943c1fe2335fe82 Mon Sep 17 00:00:00 2001 From: Luke Gorrie Date: Fri, 17 Mar 2017 09:09:18 +0000 Subject: [PATCH] README.md: Add software optimization links --- README.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/README.md b/README.md index d5b9811a8e..1c4189b8b9 100644 --- a/README.md +++ b/README.md @@ -53,6 +53,21 @@ This makes the following classes of pull requests very welcome: The CI benchmark suite will evolve over time starting from the [standard LuaJIT benchmarks](https://hydra.snabb.co/job/luajit/branchmarks/benchmarkResults/latest/download/2) (already covers RaptorJIT) and the [Snabb end-to-end benchmark suite](https://hydra.snabb.co/job/snabb-new-tests/benchmarks-murren-large/benchmark-reports.report-full-matrix/latest/download/2) (must be updated to cover RaptorJIT.) +### Optimization resources + +These are the authoritative optimization resources for processors +supported by RaptorJIT. If you are confused by references to CPU +details in discussions then these are the places to look for answers. + +- [Computer Architecture: A Quantitiave Approach](https://www.amazon.com/Computer-Architecture-Fifth-Quantitative-Approach/dp/012383872X) by Hennessy and Patterson. +- [Intel Architectures Optimization Reference Manual](http://www.intel.com/content/www/us/en/architecture-and-technology/64-ia-32-architectures-optimization-manual.html). +- Agner Fog's [software optimization resources](http://www.agner.org/optimize/): + - [Instruction latency and throughput tables](http://www.agner.org/optimize/instruction_tables.pdf). + - [Microarchitecture of Intel, AMD, and VIA CPUs](http://www.agner.org/optimize/microarchitecture.pdf). + - [Optimizing subroutines in assembly language for x86](http://www.agner.org/optimize/optimizing_assembly.pdf). + +The [AnandTech review of the Haswell microarchitecture](http://www.anandtech.com/show/6355/intels-haswell-architecture) is also excellent lighter reading. + ### Compilation RaptorJIT uses [nix](http://nixos.org/nix/) to define a reproducible