solana/README.md

60 lines
1.7 KiB
Markdown
Raw Normal View History

2018-02-15 12:59:33 -08:00
[![Build Status](https://travis-ci.org/garious/phist.svg?branch=master)](https://travis-ci.org/garious/phist)
2018-02-16 08:02:44 -08:00
[![codecov](https://codecov.io/gh/garious/phist/branch/master/graph/badge.svg)](https://codecov.io/gh/garious/phist)
2018-02-14 14:25:49 -08:00
# :punch: phist :punch:
2018-02-15 12:59:33 -08:00
2018-02-16 10:30:36 -08:00
Loom is a new achitecture for a high performance blockchain. Its whitepaper boasts a theoretical
throughput of 710k transactions per second on a 1 gbps network. The first implementation of the
whitepaper is happening in the 'loomprotocol/loom' repository. That repo is aggressively moving
forward, looking to de-risk technical claims as quickly as possible. This repo is quite a bit
different philosophically. Here we assume the Loom architecture is sound and worthy of building
a community around. We care a great deal about quality, clarity and short learning curve. We
avoid the use of `unsafe` Rust and an write tests for *everything*. Optimizations are only
added when corresponding benchmarks are also added that demonstrate real performance boots. We
expect the feature set here will always be a long ways behind the loom repo, but that this is
an implementation you can take to the bank, literally.
# Developing
Building
---
Install rustc, cargo and rustfmt:
```bash
$ curl https://sh.rustup.rs -sSf | sh
$ source $HOME/.cargo/env
$ rustup component add rustfmt-preview
```
Download the source code:
```bash
$ git clone https://github.com/garious/phist.git
$ cd phist
```
Testing
---
Run the test suite:
```bash
cargo test
```
Benchmarking
---
First install the nightly build of rustc. `cargo bench` requires unstable features:
```bash
$ rustup install nightly
```
Run the benchmarks:
```bash
$ cargo +nightly bench --features="unstable"
```