How to Choose Which Mining Software to Use What is Mining Pool?Ī mining pool is a way for miners to pool their resources together and share their hashing power while splitting the reward equally according to the number of shares they contributed to solving a block.Īnyone who wants to make a profit through cryptocurrency mining has the choice to either go solo with his own dedicated devices or join a pool where multiple miners and their devices combine to enhance their hashing output. It involves creating a hash of a block of transactions that cannot be easily forged, protecting the integrity of the entire blockchain without the need for a central system. Mining, in the context of blockchain technology, is the process of adding transactions to the large distributed public ledger of existing transactions, known as the blockchain. Originally devised for the digital currency, Bitcoin.īlockchain represents an innovation in information registration and distribution that eliminates the need for a trusted party to facilitate digital relationships. What is Blockchain?īy allowing digital information to be distributed but not copied, blockchain technology created the backbone of a new type of internet. You may need special software for your ASIC miner as well, although some newer models promise to ship with everything pre-configured, including a bitcoin address so that all you need to do is plug it in the wall. They are available for Windows, Mac OS X, and others. It will direct them to mine as part of a specific pool, change the speed of the fans, change which currency to mine – all the good stuff! There is a variety of these available, depending on your operating system. func (miner *CGMiner) Summar圜ontext(ctx context.The application is what instructs the hardware to do the hard work, passing through transaction blocks for it to solve.func (miner *CGMiner) Summary() (*Summary, error).func (miner *CGMiner) StatsContext(ctx context.Context) (Stats, error).func (miner *CGMiner) Stats() (Stats, error).func (miner *CGMiner) PoolsContext(ctx context.Context) (Pool, error).func (miner *CGMiner) Pools() (Pool, error).func (miner *CGMiner) Enable(pool *Pool) error.func (miner *CGMiner) Disable(pool *Pool) error.func (miner *CGMiner) Devs() (*Devs, error).func (miner *CGMiner) Delete(pool *Pool) error.func (miner *CGMiner) AddPoolCtx(ctx context.Context, url, username, password string) error.func (miner *CGMiner) AddPool(url, username, password string) error.func NewCGMiner(hostname string, port int64, timeout int) *CGMiner.Miner := cgminer.NewCGMiner("localhost", 4028, 2)įmt.Printf("%s | GHS avg: %0.2f\n", stats.Type, stats.GhsAverage) Test coverage now: 58.4% of statements Quickstart package main I've created helpers to find data that depends on model, see example below. My API method Stats() will return generic structure, that have all fields from all devices. I wrote test for all of this, you can find textures in testdata folder. Yep, fix this, but json response still invalid, float and integer values some times are presented as strings, sometimes you got "" instead of null value.Ĭommand "stats" returned different output for each device, that i have tested S9, D3, 元+, T9+, even R1-LTC router. When you try get stats from cgminer via api, for a first time you can't parse the answer, because it's not valid and some portion of response of version command is mixed to the answer. Version and Summary sections have the same structure over the all devices, but Stats - it is something like hell.Ĭgminer/Bmminer - is a best example of very bad JSON api and very bad code at all(it even has sprintf buffer overflow in "check" for a years). You can use runCommand(command string, parameter string) to run any command, that you want. I started to completely rewrite forked code.Īt this moment fully tested commands: Version(), Summary(), Stats()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |