I mean is their any way we can set up cpu affinity for particular user, for all his currently running process or for process which he will start later?
Yes, this is possible.
I would execute the user's processes into a cgroup comprised of the CPU core(s) you wish to use. Depending on your version of RHEL (5 versus 6), you could use CPU shields via cpusets/cset in EL5 or try the cgroup approach documented in EL6. The latter example uses an
For your example using
The following small bash-script will do it:
Children of the bound processes will stay bound to that cpu-set.