This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Updating dependencies | |
Resolving dependencies... | |
1: fact: nixops-with-plugins is 0.1.0 | |
1: derived: nixops-with-plugins | |
1: fact: nixops-with-plugins depends on nixops (2.0.0 git rev master) | |
1: fact: nixops-with-plugins depends on nixops-aws (1.0 git branch master) | |
1: fact: nixops-with-plugins depends on nixopsvbox (1.7 git branch master) | |
1: fact: nixops-with-plugins depends on nixops-virtd (1.0 git branch master) | |
1: fact: nixops-with-plugins depends on nixops-digitalocean (2.0 git branch master) | |
1: fact: nixops-with-plugins depends on nixops-gcp (1.0 git branch master) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Latency Comparison Numbers (~2012) | |
---------------------------------- | |
L1 cache reference 0.5 ns | |
Branch mispredict 5 ns | |
L2 cache reference 7 ns 14x L1 cache | |
Mutex lock/unlock 25 ns | |
Main memory reference 100 ns 20x L2 cache, 200x L1 cache | |
Compress 1K bytes with Zippy 3,000 ns 3 us | |
Send 1K bytes over 1 Gbps network 10,000 ns 10 us | |
Read 4K randomly from SSD* 150,000 ns 150 us ~1GB/sec SSD |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
inputs.flake-utils.url = "github:numtide/flake-utils"; | |
inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-21.05"; | |
outputs = { self, nixpkgs, flake-utils }: | |
flake-utils.lib.eachSystem [ "x86_64-linux" ] (system: | |
let | |
pkgs = import nixpkgs { | |
inherit system; | |
config = { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
pub trait Filter { | |
type Input: Copy; | |
type Output; | |
fn process(&mut self, sample: Self::Input) -> Self::Output; | |
} | |
#[derive(Copy, Clone)] | |
pub struct Nil<X>(pub X); | |
#[derive(Copy, Clone)] |
I recently happened upon an implementation of popen()
(different API, same idea) using clone(2)
, and so I opened an issue requesting use of vfork(2)
or posix_spawn()
for portability. It turns out that on Linux there's an important advantage to using clone(2)
. I think I should capture the things I wrote there in a better place. A gist, a blog, whatever.
So here goes.
Long ago, I, like many Unix fans, thought that fork(2)
and the fork-exec process spawning model were the greatest thing, and the Windows sucked for only having [exec*()
](http://pubs.opengroup.org/onlinepubs/9699919
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
inputs = { | |
flake-utils.url = "github:numtide/flake-utils"; | |
rust-evdev = { | |
url = "github:ndesh26/evdev-rs"; | |
flake = false; | |
}; | |
}; | |
outputs = { self, nixpkgs, flake-utils, rust-evdev }: | |
flake-utils.lib.eachDefaultSystem (system: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
gdb -p "$1" -batch -ex 'set {short}$rip = 0x050f' -ex 'set $rax=231' -ex 'set $rdi=0' -ex 'cont' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
use criterion::{criterion_group, criterion_main}; | |
mod basic_operations; | |
criterion_group!(basic_operations, bench); | |
criterion_main!(basic_operations); |
OlderNewer