From ba97ed5e303c25e01fc1565c523cdcd63d130838 Mon Sep 17 00:00:00 2001 From: Emery Berger Date: Sun, 1 Oct 2023 15:46:12 -0600 Subject: [PATCH] Fixed link from badge --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index fc3420c..c8bdec3 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ by [Charlie Curtsinger](https://curtsinger.cs.grinnell.edu/) and [Emery Berger](https://emeryberger.com) -![Rust Crate downloads](https://img.shields.io/crates/d/coz?logo=rust&link=https%3A%2F%2Fcrates.io%2Fcrates%2Fcoz) +[![Rust Crate downloads](https://img.shields.io/crates/d/coz?logo=rust&link=https%3A%2F%2Fcrates.io%2Fcrates%2Fcoz)](https://crates.io/crates/coz) Coz is a new kind of profiler that unlocks optimization opportunities missed by traditional profilers. Coz employs a novel technique we call *causal profiling* that measures optimization potential. This measurement matches developers' assumptions about profilers: that optimizing highly-ranked code will have the greatest impact on performance. Causal profiling measures optimization potential for serial, parallel, and asynchronous programs without instrumentation of special handling for library calls and concurrency primitives. Instead, a causal profiler uses performance experiments to predict the effect of optimizations. This allows the profiler to establish causality: "optimizing function X will have effect Y," exactly the measurement developers had assumed they were getting all along.