[Edit: Some useful background info can be found at topic6040.html (summary) or at http://rednectar.net/2013/02/24/dynamip ... d-finally/ (full Article)]One of the most difficult problems new users have to come to grips with when starting out with GNS3 is the concept of an Idle-PC.
Get it right, and you will have a great GNS3 experience. Try to ignore it, and you will be forever miserable.
Here is my tedious and time consuming method of finding a good idle-pc value.
REPEAT FOR EVERY DIFFERENT IOS IMAGE YOU WISH TO RUN ON YOUR SYSTEM:
Step 1:Windows: Open the windows task manager and sort by %CPU
Linux: Open a console window and enter the command
topMac OS X: Open a terminal window and enter the command
top -o cpuKeep this window visible for the entire process
Step 2:In GNS3, start a new topology with 1 router ONLY
Start the router
[edit: 2012.02.01 After reading instant000's detailed response on p2, the following step may not be a good idea, or at least it may be better putting theses lines into startup.txt instead, then move to step 3 at this point]
Open the console. When when the router is fully up, configure the following:
Code:
line con 0
exec-timeout 0
NOTE: While writing this post, I observed this step alone dropped the CPU usage from 98% to 1% on a Windows 7 install (running in a VM on OS X)
Step 3:Back at your task manager or console window:
Take note of the amount of CPU being chewed by dynamips
Step 4:In GNS3, right-click on the router and choose
idle-pcIf NO values appear marked with *, try again
When you find a value marked with a *, WRITE IT DOWN
If MULTIPLE values appear with *, WRITE THEM ALL DOWN (in a column)
... then choose one of them
Step 5:Check the CPU utilisation for dynamips in the task manager or console window.
Estimate the average CPU consumption for dynamips over say 15-20 seconds
WRITE IT DOWN next to the Idle-pc value you wrote down in step 4
If you have an idle-pc vlaue that shows less than 10-15% CPU, you may want to go to step 6,
Else, go back to step 4
Step 6:Now that you have a good idle-pc, you need to know how to use it well.
Firstly, check that GNS3 has recorded you best value against the image you are using
That's in:
Edit->IOS Images and HypervisorsSelect the image you are using and check the IDLE PCs value
Now GNS3 will automatically use that value in any NEW topologies you create.
Step 7:If you have any saved topologies (ie .net files) that have used this IOS, open the .net file and replace the idle-pc value found there with your new "good" idle-pc value.
Step 8:Record the results you found (IOS & idle-pc values) in a spreadsheet and keep it!
Now go back to Step 1 and repeat for the next IOS image you use
General Tips for keeping CPU under controlAlways use the same image for ALL routers in your topology if possible.
This means using the same router model as well. If this is not possible, use the same image for all routers of the same model.
ALWAYS set the
exec-timeout 0 under
line con 0In GNS3 0.7.3 and later, you can set a base config for each IOS image under
Edit->IOS Images and Hypervisors. Make sure the base config has the
exec-timeout 0 under
line con 0UPDATE 2011-10-22I've added a second article that you should read after this:
Investigating Idlepc idlemax to minimise CPU usage