Skip to content

Instantly share code, notes, and snippets.

Avatar
:octocat:

Lilith River lilith

:octocat:
View GitHub Profile
View imageflow_2020_benchmarks.txt
Using imageflow to thumbnail 32 images in parallel
0.19user 0.15system 0:00.71elapsed 48%CPU (0avgtext+0avgdata 19420maxresident)k
8inputs+928outputs (0major+42591minor)pagefaults 0swaps
Using libvips to thumbnail 32 images in parallel
10.91user 1.55system 0:03.52elapsed 353%CPU (0avgtext+0avgdata 68336maxresident)k
2264inputs+7264outputs (47major+392240minor)pagefaults 0swaps
View aspect_test.cs
using System;
using System.Collections.Generic;
using System.Drawing;
using Xunit;
using Xunit.Abstractions;
namespace AspectTesting
{
View interior_mutable_sets.rs
use ::std::cell::*;
/// Provides interior mutability for a add-only set.
/// Items can be added (a reference is returned)
/// References can be looked up via a pointer to the item
#[derive(Debug,Clone, PartialEq)]
pub struct AppendOnlySet<T>{
slots: RefCell<Vec<Box<T>>>
}
impl<T> AppendOnlySet<T> {
View Todo: explain lifetimes better in the Rust Book
<nathanael> Why does rust care about lifetime bounds on pointers to generic types?
<delma> iamrohit7: yes if you represent graph like that
* rschiffl1n has quit (Ping timeout: 121 seconds)
<Moonlightning> iamrohit7: I guess. And to remove a node, you'd...have to travel to each of its neighbors in turn, removing that edge and the dropping neighbor's Rc holding self, and then use Rc::try_unwrap()
<delma> there is other reprentantions too
<Moonlightning> Or...unsafe black magic
* mou has quit (Ping timeout: 121 seconds)
<Moonlightning> dinfuehr: names instead of just ids?
<nathanael> Ex: https://gist.github.com/nathanaeljones/80792ff3ffb5854f7a18ba40f60c6770
<Moonlightning> dinfuehr: AFAIK, Display is only for types that have a single obvious human-readable representation. It's not implemented for most types.
View imageflow_pinvoke.h
#ifndef cheddar_generated_imageflow_pinvoke_h
#define cheddar_generated_imageflow_pinvoke_h
#ifdef __cplusplus
extern "C" {
#endif
#include <stdint.h>
View imageflow.h
#ifndef cheddar_generated_imageflow_h
#define cheddar_generated_imageflow_h
#ifdef __cplusplus
extern "C" {
#endif
#include <stdint.h>
View rust_refcell.rs
#![feature(alloc)]
#![feature(oom)]
pub mod ffi;
pub mod boring;
pub mod parsing;
#[macro_use]
extern crate json;
View bench_single_thread.txt
This version of Imageflow was used: https://github.com/imazen/imageflow/commit/80d38f8c471d60a89dfebe9543fb364b99c7743e
The benchmark script is here: https://github.com/imazen/imageflow/blob/80d38f8c471d60a89dfebe9543fb364b99c7743e/wrappers/server/bench_single_thread.sh
./bench_single_thread.sh
This benchmark is for ubuntu 14.04.
Please run the following commands first for more accurate results
mkdir bench_in
mkdir bench_out
sudo mount -t tmpfs -o size=512M tmpfs bench_in
sudo mount -t tmpfs -o size=512M tmpfs bench_out
@lilith
lilith / 2016-06-10-benchmarks.txt
Last active May 27, 2017
2016-06-10 benchmarks of libimageflow on Ubuntu 14.04 workstation. See www.imageflow.io
View 2016-06-10-benchmarks.txt
Use wrappers/server/bench.sh to reproduce
https://github.com/imazen/imageflow/commit/f05efb89f993827936693e98d39adb31057ec270
Run on a 4-core Xeon E3-1275 v5 with 32GB of ram.
https://gist.github.com/nathanaeljones/1a4394f994a542957f89a674ec83312b
This benchmark is for ubuntu 14.04.
Compiling imageflow-server v0.1.0 (file:///home/n/Documents/imazen/imageflow/wrappers/server)
Version: ImageMagick 6.9.3-7 Q16 x86_64 2016-05-04 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2016 ImageMagick Studio LLC
@lilith
lilith / workstation.txt
Last active Jun 21, 2016
Benchmark workstation info
View workstation.txt
32GB RAM
Intel Xeon E3-1275 v5 SkyLake 3.6 GHz 8MB L3 Cache LGA 1151 80W BX80662E31275V5
http://ark.intel.com/products/88177/Intel-Xeon-Processor-E3-1275-v5-8M-Cache-3_60-GHz#@ordering
cpuinfo
Intel(R) processor family information utility, Version 5.1.3 Build 20160120 (build id: 14053)
Copyright (C) 2005-2016 Intel Corporation. All rights reserved.
===== Processor composition =====
You can’t perform that action at this time.