mirror of
				https://github.com/NotAShelf/microfetch.git
				synced 2025-10-31 06:12:37 +00:00 
			
		
		
		
	include benchmarks, add contributing section
This commit is contained in:
		
					parent
					
						
							
								72d3130aa0
							
						
					
				
			
			
				commit
				
					
						7d693ea26f
					
				
			
		
					 1 changed files with 35 additions and 1 deletions
				
			
		
							
								
								
									
										36
									
								
								README.md
									
										
									
									
									
								
							
							
						
						
									
										36
									
								
								README.md
									
										
									
									
									
								
							|  | @ -12,7 +12,7 @@ welcome to use it on your system: it's fast. | |||
| - Fast | ||||
| - Really fast | ||||
| - Minimal dependencies | ||||
| - Actually very fast | ||||
| - Actually really fast | ||||
| - Cool NixOS logo (other, inferior, distros are not supported) | ||||
| - Reliable detection of following info: | ||||
|   - Hostname/Username | ||||
|  | @ -25,11 +25,45 @@ welcome to use it on your system: it's fast. | |||
|   - Memory Usage/Total Memory | ||||
|   - Storage Usage/Total Storage (for `/` only) | ||||
|   - Shell Colors | ||||
| - Did I mention fast? | ||||
| 
 | ||||
| ## Benchmarks | ||||
| 
 | ||||
| Microfetch's performance is mostly hardware-dependant, however, the overall | ||||
| trend seems to be < 2ms on any modern (2015 and after) CPU. Below are the | ||||
| benchmarks with Hyperfine on my desktop system. | ||||
| 
 | ||||
| | Command                     | Mean [ms] | Min [ms] | Max [ms] | Relative | | ||||
| | :-------------------------- | --------: | -------: | -------: | -------: | | ||||
| | `target/release/microfetch` | 1.3 ± 0.1 |      1.2 |      3.7 |     1.00 | | ||||
| 
 | ||||
| On an average configuration, this is roughly 25 times faster than fastfetch and | ||||
| around 80 times faster than neofetch. Results, as stated above, may vary. | ||||
| 
 | ||||
| ## Customizing | ||||
| 
 | ||||
| You can't. | ||||
| 
 | ||||
| ### Why? | ||||
| 
 | ||||
| Customization, of any kind, is expensive: I could try reading environment | ||||
| variables, parse command-line arguments or read a configuration file but all of | ||||
| those increment execution time and resource consumption by a lot. | ||||
| 
 | ||||
| ### Really? | ||||
| 
 | ||||
| To be fair, you _can_ customize Microfetch by... Well, patching it. It's not the | ||||
| best way per se, but it will be the only way that does not compromise on speed. | ||||
| 
 | ||||
| ## Contributing | ||||
| 
 | ||||
| I will, mostly, reject feature additions. This is not to say you should avoid | ||||
| them altogether, as you might have a really good idea worth discussing but as a | ||||
| general rule of thumb consider talking to me before creating a feature PR. | ||||
| 
 | ||||
| Contributions that help improve performance in specific areas of Microfetch are | ||||
| welcome. Though, prepare to be bombarded with questions. | ||||
| 
 | ||||
| ## License | ||||
| 
 | ||||
| Microfetch is licensed under [GPL3](LICENSE). See the license file for details. | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue