Never mind. I already found the answer.
http://cryptomining-blog.com/5684-updated-ethminer-0-9-41-nvidia-cuda-version-for-windows-2/
--cuda-schedule Set the schedule mode for CUDA threads waiting for CUDA devices to finish work. Default is sync. Possible values for mode are:
auto – Uses a heuristic based on the number of active CUDA contexts in the process C and the number of logical processors in the system P. If C > P, then yield else spin.
spin – Instruct CUDA to actively spin when waiting for results from the device.
yield – Instruct CUDA to yield its thread when waiting for results from the device.
sync – Instruct CUDA to block the CPU thread on a synchronization primitive when waiting for the results from the device.
PS I still don't understand this command. Any help plz.
This setting determines how the CCMiner process interacts with the CPU and other processes (including those that belong to the operating system) running on your system. Whether it improves your hash rate depends on how many GPUs you have, how fast they are and the speed and number of cores your CPU has. CCMiner uses the CPU to validate results from your GPUs, so if CCMiner cannot validate results as quickly as your GPUs are creating them, your hash rates will suffer a little. Changing this setting can give CCMiner more access to your CPU, which can increase the speed at which results are processed. However, changing this setting will increase CPU utilization and may decrease system responsiveness because other processes will have to wait longer to use the CPU.
For example, the Spin option gives CCMiner the fastest access to the CPU because it keeps the process active on the CPU as it waits for new GPU results. This prevents other background processes from interrupting it and can improve CCMiner performance at the expense of the operating system and anything else also running on the computer. Yield is a compromise because it gives CCMiner a bit more access to the CPU than sync, but it allows other processes to interrupt it when it isn't doing anything. Sync tends to be the most friendly towards other background processes so the system remains responsive during mining, but it also means that the CCMiner process may be interrupted a lot, which might affect your performance if you have several fast GPUs in a system with a slow CPU.
Some variants of CCMiner, such as Klaust and Tpruvot, may use a different default setting then the one described above. For example, sync might be the default setting for those versions. In those cases, it may be worth trying yield instead even if you have a relatively fast CPU as it will give the miner process better access to the CPU while not blocking other background processes. I find that yield gives more consistent hash rates than sync on a i7 running 1080 and 1070 ti cards.
Thx HashAuger Now I understand.
So how would the command go.. like this? --cuda-schedule yield
Most of the variants of CCMiner that I have seen that support this parameter use a number to represent the desired setting. For example, on Klaust 8.21, you would use --cuda-schedule 2 for yield. Refer to each miner's readme.txt file to see how they use this parameter. It is worth mentioning again that different versions of CCMiner use different default schedule settings. Klaust, for instance, defaults his miner to use block sync whereas Tpruvot uses the Cuda SDK's "auto" setting. According to the Cuda developer documentation, auto switches between yield and spin based on the the number of GPUs compared to CPU cores; when there are more GPUs than cores it uses yield.