CGMiner includes overclocking, monitoring, fan speed control and remote interface capabilities. Its other features include self-discovery of new blocks using a mini-database, binary loading of kernels, multi-GPU support, and CPU mining support. There are many other characteristics that you can find out here on the official CGminer forum.
Installation and configuration of CGMiner
The first step is to install the latest version of the program that is suitable for the operating system from any reliable source, and then the program needs to be prepared for work and set into it personal data for mining.
The connection process begins with selecting the optimal mining pool. On it you need to register, create a worker and identify the equipment, giving it any name.
Next, the pool must be connected to the program. All CGMiner settings are performed through the console. In order not to make settings every time you start, it is recommended to create a .bat file where a personal connection script will be written. The BAT file is created in the software folder using Notepad. The file itself is a text document with a .bat extension and starts the execution of a connection script that is specified by the user.
The standard line connecting a miner to mining on a pool looks like this:
cgminer —scrypt -о- stratum+tcp: pool access address: -u worker name -p password, where:
- cgminer — address to the launch file;
- scrypt—working algorithm;
- o — transition required to indicate the pool address;
- the pool address, which is indicated on its official page in the connection settings section;
- pool login and name of the created worker;
- p — password for accessing the worker.
CGMiner is one of the few console clients that comes with detailed setup instructions. Users can check it out on the official GitHub page to properly perform advanced mining setup. The following parameters are considered the most important in setting:
- Intensity - production intensity. The parameter can be set in the range from 1 to 20. It should be borne in mind that high intensity does not always have a positive effect on the productivity of production, since the load on the equipment is too high. In the absence of a sufficient amount of RAM, the mining speed may, on the contrary, decrease, and many errors and malfunctions may appear. If this parameter is left unspecified, the software will independently regulate the production intensity depending on the equipment resources. To find the optimal intensity value, you can start mining with different set values and track the hashrate of the farm, and at the end of the experiment, set the value at which the hashrate was the highest.
- Thread-concurrency - volumes of calculations. Initially, this parameter is set to maximum, but in order to increase performance, it is recommended to look for the optimal value specifically for the connected equipment. This parameter must be a multiple of the number of shader units on the GPU.
Settings Features
To configure the miner, just set the following settings:
- login and password;
- pool;
- video card parameters (just specify the upper load limit).
What is a pool and why is it necessary to use it? Every day the complexity of calculating each block increases, so for successful mining the powers of all pool participants are summed up at once. Naturally, the profit is divided between them depending on the performance of the provided workstation. Today it is almost impossible to make money from mining alone.
Interesting: What is a miner? Cryptocurrency mining or what do viruses have to do with it?
Adding a pool
How to set up the program? After downloading it (you can do it via a link to the official forum), the package should be unzipped, after which you need to create a bat file in the folder. Everything is extremely simple - you need to create a new text document and manually rename it to “run.bat”. Next, you need to open this file in any text editor and make the following settings: cgminer.exe —scrypt -u WORKER.1 -p PAROL -o stratum+tcp://ADRESS:PORT. Naturally, instead of “worker” you must specify the name of the workstation (depending on the one that was registered with the pool), as well as the password for access. ADRESS and PORT are, respectively, the TCP address of the pool and the port through which mining will be carried out. All this data can be found directly on the pool website, which will subsequently credit funds to the miner’s personal account. The Litecoin wallet number is set directly in the pool account (on the website).
All that remains is to save the created bat file, and then launch the CGMiner.exe process. That’s it, you can use access to the pool and mine cryptocurrency. You just need to remember to monitor the temperature of the video card and provide it with a normal flow of air for cooling.
How to use CGMiner
After all the settings have been entered into the .bat. file and saved in the software folder, this file must be opened by double clicking the mouse. If everything is done correctly, then after opening a console window will appear.
The CGMiner program automatically connects to the pool by executing the configuration script specified in the file. The user can only leave his farm in this position.
An important feature of the program is that it can independently disable idle workers on the pool. The user is able to configure production using the Load Balance and Round Robin strategies and independently set time periods for reconnection, create forced delays or change the width of vectors.
How to use Cgminer to mine crypto coins
To launch the Cgminer application for mining crypto coins, set the appropriate launch parameters for the BAT file located in the directory where this application is located.
All instructions necessary for Cgminer can be studied on the official developer page (link).
Here is the source where you can download version 3.7.8 that supports GPU.
To run the program, just enter the following text into the file with the “txt” extension:
cgminer –o https://pool:port -u username -p password
where https://pool:port is the mining pool address, username is the user, password is the user password specified during registration.
After this, you need to save and rename the resulting file to the “bat” extension and run it. It is suitable for SHA-256 algorithm ASICs.
To mine other coins, indicate the appropriate algorithm, for example, for Neoscrypt, the Cgminer batch file should be like this:
cgminer.exe —neoscrypt -o strаtum+tcp:// pool:port -u username -p password -I 13.
In addition, it is advisable to set more precise parameters for the program to help achieve greater performance.
More fine-tuning of the Cgminer Bat file involves specifying additional arguments to optimize coin mining on specific equipment.
Most often, when mining on video cards using Cgminer, the following command line parameters are specified:
- —intensity (-I) (number) – intensity of mining on cgminer. It is selected for a specific video card by selecting a value at which stability is maintained. The maximum number for SHA-256 is 14, and for Scryрt – 20.
- —auto-fan – an option that maintains the speed of coolers at a level that ensures a temperature no higher than the specified one.
- —temp-target 75 – target temperature of the video card.
- —auto-gpu – automatic selection of the graphics core frequency until the temp-target temperature is reached.
- —gpu-engine 750 – where 750 is the GPU frequency in megahertz.
- —gpu-memclock 300 – where 300 is the video memory frequency in megahertz.
- setx GPU_MAX_ALLOC_PERCENT 100 – opens access to all available video memory.
- shaders (number) - how many stream processors are in the video card.
- thread-concurrency (8192) – the value is set equal to the number of stream processors multiplied by four.
- —gpu-threads (-g) – number of computation threads from 1 to 10;
- —gpu-vddc — core voltage.
If you want to set different values for mining parameters for each video card, they are indicated separated by commas.
Example of setting up Cgminer for Scrypt coins (for example, for Litecoin):
cgminer.exe —scrypt -o stratum+tcp://pool:port -u WORKER -p password —intensity 12 —temp-overheat 83 —thread-concurrency 8192 —gpu-fan 80 —gpu-engine 950 —temp-target 75 —shaders 1024 —gpu-memclock 1450
The running application console looks like this:
In a properly working program, lines containing the word Accepted should appear, indicating that the pool has accepted the decision found by the miner.
A periodically appearing line like “(5s):586.0K (avg):567Kh/s | A:2745 R:45 HW:12 WU:501/m" shows the value of the speed for 5 seconds, the average speed (avg), the number of decisions made (A:), discarded decisions (R:) and overclocking errors (HW).
List of supported coins
The program is designed for mining cryptocurrencies running on the Scrypt algorithm, which makes it possible to mine Litecoin or Dogecoin.
You can also mine cryptocurrencies that operate on the Cryptonight algorithm. These coins include the popular cryptocurrency Monero for mining, as well as Bytecoin and Aeoncoin, which have some advantages in mining compared to other coins, namely:
- gradually decreasing emissions;
- generation of new blocks at short time intervals;
- less wear and tear on GPUs during mining;
- To search for a signature, you can use combined power, using video cards and processors simultaneously.
In addition, these cryptocurrencies have radically different principles of operation compared to Bitcoin, which arouses high interest in them among the cryptocurrency community and provides prospects for further growth.
In version 3.7.2. The ability to mine cryptocurrencies running on the SHA-256 algorithm has been implemented. Bitcoin is one of these coins.
This software has proven itself best in mining Litecoin and Monero on AMD GPUs. The software is not best suited for Ethereum mining and Nvidia GPUs.
Disadvantages and advantages of the application
Cgminer was developed many years ago by cryptocurrency enthusiasts, who were often programmers. In this regard, the emphasis during development was on operational efficiency, and ease of use faded into the background. Therefore, the application has the following advantages:
- The program is free and open source.
- There is no commission to the developer.
- There are great possibilities for customization for specific equipment.
- Good mining efficiency when configured correctly.
The disadvantages of the program include the following:
- Release 3.7.8, which supports mining on video cards, was released back in 2014 and is currently relevant only for theoretical study of the process.
- The latest versions no longer support mining on video cards and processors.
- It is difficult for an inexperienced user to configure cgminer.
- Few mining algorithms available.
- Less mining efficiency compared to closed-source miners written using the low-level Assembler programming language.
Management and Statistics
After launching the program, it automatically executes the specified script and immediately connects to mining. For users, this looks like a console window, which displays the hashrate of the mining farm and detailed production statistics. After just a few hours of work, you can safely go to the official website of the pool and check the mining results in your personal account.
Statistics of opened blocks will also be reflected in the console window. If something went wrong, it means that an error was made when entering data into the configuration file. You should check everything again and restart production.
Setting up CGMiner configurations
All actions to manage and configure cgminer occur through the command line. You can enter all the parameters again every time you start or change cryptocurrency, or you can create a template in the form of a .bat file with all the parameters.
cgminer cryptocurrency mining
Create a new text document, enter the main lines into it with the launch of the program and the necessary parameters:
cgminer.exe --scrypt -o stratum+tcp://us-east.stratum.slushpool.com:3333 -u TUT_NAME_USER -p TUT_BALLl_PASS
Now let's figure out what we added and why:
- cgminer – this is the name of the file that will be launched after running our start.bat
- –, -scrypt –, a parameter that specifies the algorithm of the mined cryptocurrency
- -o –, after this parameter the address of your pool and port are indicated
- -u – parameter after which you specify the login of your worker (worker) instead of “,TUT_NAME_USER”,
- -p –, here you specify the password for your employee instead of “,TUT_BALLl_PASS,”, also the standard password is the letter “,x”,
setting up cgminer creating a .bat launcher
Save a text file with the name start.bat and select the file type “All files”. This is the primary setting for your single miner, but cgminer has a number of additional settings that will help you solve this or that problem.
Full list of CGMiner commands
For convenience, we have collected all the parameters for launching cgminer, which are displayed in the table; you can switch the pages of the tables since there are a lot of commands.
Launch parameter | Parameter description |
-auto-fan | Enables automatic control of the VK fan |
--auto-gpu | Enables automatic control of VK core frequencies |
--auto-gpu | Enables automatic control of VK core frequencies |
--debug | Enables display of debugging information |
--expiry | After how many seconds should the ball be considered late (default 120) |
-failover-only | Do not work with a backup pool if the main pool is patched |
-load-balance | Load balance strategy |
-log | Log recording interval (default 5 seconds) |
--monitor | Use separate message output (?) |
-net-delay | Includes small delays to offload routers |
--no-longpoll | Disables longpoll |
--pass | Miner password |
--per-device-stats | Display statistics for each device |
-protocol-dump | Output of all protocol information |
--queue | Job queue size for load balancing (default 1) |
—quiet | Disables log, status and error output |
-real-quiet | Completely disables information output |
-remove-disabled | Removes disabled devices |
--retries | Number of retries to send (default -1, i.e. infinite) |
-retry-pause | How many seconds to wait between retry attempts (default 5) |
--rotate | Strategy for switching between pools every N minutes |
-round-robin | Round robin strategy |
-scan-time | How many seconds to spend scanning one task? |
--sched-start | Schedule start at HH:MM |
--sched-stop | Schedule a stop at HH:MM |
--shares | Exit after N ball |
--socks-proxy | socks4 proxy in the format address:port |
--submit-stale | Enable submission of late decisions |
-syslog | Use system log for messages |
--text-only | Unformatted text output |
--url | Pool address |
--user | Miner name |
--verbose | Save all messages in the log |
--device | Select devices to use |
--disable-gpu | Disable VK |
--gpu-threads | Streams on VK (default 2) |
--gpu-engine | Set core frequency in MHz: fixed or range |
--gpu-fan | Set the fan speed in percentage: fixed or range |
--gpu-memclock | Set memory frequency in MHz |
--gpu-memdiff | Set fixed difference in MHz between core and memory |
--gpu-powertune | Set powertime as a percentage |
--gpu-reorder | Re-sort video cards |
--gpu-vddc | Set core voltage in volts (!) |
—intensity | Set intensity: d - dynamic or fixed from -10 to 14 |
-kernel-path | Set the path to the kernel with a .cl extension |
--kernel | Select poclbm or phatk kernel (automatic selection by default) |
-no-restart | Do not try to restart VK if it freezes |
-temp-cutoff | VK shutdown temperature (default 95) |
-temp-hysteresis | How different the temperature can be from the target (default 3) |
-temp-overheat | Temperature for resetting VK frequencies and increasing fan speed (default 85) |
-temp-tvalueet | Set target temperature (default 75) |
—vectors | Set vector width: 1, 2 or 4 (default automatic selection) |
--worksize | Set worksize (default automatic selection) |
--ndevs | List devices and exit |
--auto-fan | Automatically adjusts GPU fan speed to maintain target temperature (value: none) |
--auto-gpu | Automatically adjusts GPU clock speed to maintain target temperature (value: none) |
--device (-d) | Allows you to select the desired device to work with, by default all work (example: --device 0) |
--disable-gpu (-G) | Disable GPU (value: no) |
--gpu-threads (-g) | Number of threads on the GPU (values: 1 - 10, default is 2, example: --gpu-threads 2) |
--gpu-dyninterval | Sets the update interval in ms for GPUs using dynamic intensity (default: 7) |
--gpu-engine | Sets the frequency for the graphics core, it is possible to set the range (example: --gpu-engine 900 or 800-900) |
--gpu-fan | Sets the fan speed as a percentage, fixed or range (example: --gpu-fan 25 or 25-65) |
--gpu-memclock | Sets the frequency for memory (for BTC it is better to lower the frequency, for LTC it is better to raise it, example: —gpu-memclock 1800) |
--gpu-memdiff | Set fixed difference in MHz between core and memory |
--gpu-powertune | Set GPU powertune percentage |
--gpu-reorder | Re-sort video cards |
--gpu-vddc | Change core voltage, in volts (example: --gpu-vddc 1.125) |
—intensity | (-I) Aggression (intensity) (values: 10 - 14, d - dynamic, example -intensity 13 or d) |
--kernel (-k) | Specifies the kernel for running the device (kernels: diablo, poclbm, phatk, diakgcn, example: --kernel diakgcn) |
--ndevs (-n) | List all devices with their numbers and exit |
--temp-hysteresis | How different the temperature in degrees can be from the target (default: 3, example: --temp-hysteresis 15) |
--temp-overheat | Temperature in degrees for resetting core frequencies and increasing fan speed (default: 85, example: --temp-overheat 90) |
--temp-target | Set the target temperature in degrees (default: 75, example: --temp-tvalueet 80) |
--vectors (-v) | Set the width of vectors, default to auto (values: 1, 2 and 4, example: --vectors 2) |
--worksize (-w) | Set the memory size, it has virtually no effect on performance (default: auto, the value must be a multiple of 64, 128, 256, 512, 1024, recommended 256, example: --worksize 256) |
<,value>, –, you need to enter something: a number, an address, etc.
There are two main commands that you should set with caution and not exceed the allowed values.
Intensity – is one of the main commands, which allows you to set the intensity of the miner in values from 0 to 20. Keep in mind that high intensity helps to fill up all the memory and thereby reduce the mining speed. Set to medium values so as not to exceed your memory limit and still work at maximum values.
Thread-concurrency – a parameter that controls the computation flow of your scrypt algorithm. Depends on the number of shaders supported by your video card; the value of this parameter is initially set to the maximum.
You can find or add all these commands in the cgminer.conf file
Just open this file in a text editor and change the values to your own. Or create your own start.bat with your own values.
Example of a customized CGMiner bat file for Windows
This is roughly what your configured and created bat file should look like to launch the miner.
setx GPU_MAX_ALLOC_PERCENT 100 setx GPU_USE_SYNC_OBJECTS 1 cgminer.exe —scrypt —worksize 256 —intensity 20 —auto-fan —lookup-gap 2 —thread-concurrency 25614 —gpu-engine 1050 — gpu-memclock 1600 —gpu-powertune 20 -o pool address :port -u worker -p password
If you suddenly do not understand the actions that you must take to start mining, then see these instructions.
Advantages and disadvantages
- provides a high level of performance for AMD brand graphics processors;
- automatically disconnects and reconnects idle pool workers;
- supports the production of cryptocurrencies attractive for mining;
- allows for flexible production settings;
- you can overclock the performance of the video card and adjust the speed of the cooler;
- developers provide detailed instructions for configuration and management.
The only drawback of the software is the lack of a graphical interface, which makes connecting and configuring the program problematic for beginners.
Features and Benefits of CGMiner
Let's start with the fact that CGMiner is not suitable for everyone; a significant disadvantage of the program for beginners in mining is the lack of a GUI, that is, there is no graphical interface.
When you launch the program, a console miner will open, in which beginners will not immediately decide what to fill in and where.
All your data, and this is the correctly selected pool, load level, employee account and other parameters, are written manually in the cgminer .bat configuration file.
There are several versions of the CGMiner program, but it is version CGMiner 3.7.2 that runs on the Windows operating system and is capable of mining cryptocurrency using your AMD video card.
Unfortunately, cgminer is not capable of mining cryptocurrency using CUDA technology; if you have an NVIDIA video card, then cgminer will not work on it!!! Do not confuse it with CCMiner, which actually works with a video card from this manufacturer.
cgminer does not work on nvidia CUDA video cards
CUDA (from the English Compute Unified Device Architecture) is a software architecture that allows a developer to control Nvidia processors in the simplified C programming language and thereby increase the power and performance of an NVIDIA video card, which, of course, supports this technology.
To work with Nvidia video cards, use other miners. If you think that Claymore's Dual Miner will solve this nonsense with CUDA technology and nvidia support, then forget it, since this miner specializes in mining AMD video cards.
setting up cooler rotation in cgminer
We would like to note that one of the features of the program is fine-tuning the rotation speed of coolers, and most importantly, cgminer contains a tool for overclocking the GPU. Of course, using these “tricks” entails great risks and the possibility of losing your video card from overheating or failure of the cooler and thereby overheating.
The program may look simple, but cgminer has a number of functional features that will greatly facilitate your cryptocurrency mining:
Debug mode
Cryptonight algorithm for mining Monero and Bytecoin tokens
The main concept of the Kryptonite software algorithm is to destroy the barrier that has arisen between users using traditional farms based on video cards and users mining crypto using advanced and expensive ASIC devices. This algorithm is sensitive to the use of a particular RAM.
The main concept of this crypto-algorithm is based on the allocation of a large information block into the RAM with a resulting unexpected result in this information block. To ensure a more convenient principle for storing information rather than calculating it upon new access, the block must be relatively large. In this case, the operation of the algorithm should automatically prevent the occurrence of internal parallelism. This means that the N-number of crypto-threads working at the same time requires the instant allocation of a larger amount of RAM.
The popular crypto algorithm Scrypt also works using RAM. True, it retains the possibility of building and using high-performance and highly specialized devices for mining digital money, working on the basis of this algorithm. If we talk about ccminer-cryptonight, then, unlike the Scrypt algorithm, all new blocks, 64 bytes in size, depend on all previously generated blocks. This updated algorithm uses 2 megabytes of RAM, which is the minimum value for the L3 memory cache of desktop CPUs. This amount of RAM occupied does not allow the use of ASIC devices for crypto mining.
Users should understand the differences between the CryptoNote and CryptoNight algorithms. CryptoNight is essentially one way to implement CryptoNote. Crypto coins based on Kryptonite include Monero (XMR), ByteCoin (BCN), and Aeoncoin.
As for the advantages of cryptocurrency mining using this algorithm, they include:
- ensuring a gradually fading emission for cryptocurrency assets;
- minimum time intervals between the formation of new crypto blocks;
- impossibility of crypto mining using ASICs;
- to improve the performance of cryptocurrency farms, it is possible to use hybrid combinations of CPU and video chips;
- the presence of a number of significant conceptual differences from Bitcoin algorithms, which should attract the attention of new users, as well as crypto investors interested in investing in new crypto assets;
- the peculiarities inherent in coins using the CryptoNight algorithm allow them to stand out from other cryptocurrencies and attract the attention of crypto market participants;
- profitability and payback rates are significantly superior to most existing analogues;
- the video card and processor heat up much less than when using other crypto algorithms, which has a positive effect on the reliability and durability of the equipment for mining digital money.