Update README.md

This commit is contained in:
alexm-status 2018-05-27 22:26:38 -07:00 committed by GitHub
parent 66d7fb6575
commit 8486a31f4f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 8 additions and 9 deletions

View File

@ -1,22 +1,21 @@
# Nim Ethash **Nim Ethash**
[![Build Status (Travis)](https://img.shields.io/travis/status-im/nim-ethash/master.svg?label=Linux%20/%20macOS "Linux/macOS build status (Travis)")](https://travis-ci.org/status-im/nim-ethash)[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) ![Stability: experimental](https://img.shields.io/badge/stability-experimental-orange.svg) [![Build Status (Travis)](https://img.shields.io/travis/status-im/nim-ethash/master.svg?label=Linux%20/%20macOS "Linux/macOS build status (Travis)")](https://travis-ci.org/status-im/nim-ethash)[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) ![Stability: experimental](https://img.shields.io/badge/stability-experimental-orange.svg)
A pure Nim implementation of Ethash, the Ethereum proof of work # Introduction
A pure-Nim implementation of Ethash, the Ethereum proof of work
Implementation is based on the [spec revision 23 (2017-08-03)](https://github.com/ethereum/wiki/wiki/Ethash) and under the Apache License v2. Implementation is based on the [spec revision 23 (2017-08-03)](https://github.com/ethereum/wiki/wiki/Ethash) and is under the Apache License v2.
## Mining # Mining
An unoptimized mining CPU backend is available through the compile-time flag ``-d:ethash_mining``. An unoptimized mining CPU backend is available through the compile-time flag ``-d:ethash_mining``.
It requires compilation through the C++ backend. It requires compilation through the C++ backend.
## Optimizations # Optimizations
For maximum speed, compile Ethash with `-d:release -d:march_native -d:openmp`. For maximum speed, compile Ethash with `-d:release -d:march_native -d:openmp`.
This will compile Ethash in Nim release mode, with all supported CPU extensions (AVX2 especially) and with OpenMP multiprocessing This will compile Ethash in Nim release mode, with all supported CPU extensions (especially AVX2) and with OpenMP multiprocessing. On MacOS, OpenMP requires installing GCC-7 and can be done through Homebrew.
On MacOS, OpenMP requires installing GCC-7. It can be done through homebrew.
## Original implementation # Original implementation
Original Ethereum implementation is available [here](https://github.com/ethereum/ethash). Original Ethereum implementation is available [here](https://github.com/ethereum/ethash).
**Warning ⚠ - License notice**: the original implementation is under GPLv3 or LGPLv3 and must not be used in this project. **Warning ⚠ - License notice**: the original implementation is under GPLv3 or LGPLv3 and must not be used in this project.