cancel
Showing results for 
Search instead for 
Did you mean: 

Does anyone use OS tools to limit the number of cores RS 15.7.1 uses?

jason_s_symonds
Discoverer
0 Kudos

We are in the process of upgrading from RS 15.2 to RS 15.7.1 SP201.  We're going from smp_enable being off (RS 15.2) to on (RS 15.7.1).

In 15.2 when we've tried enabling smp, we found performance went down and CPU utilisation on the host went to impressive levels.  We're hoping that RS 15.7.1 is a bit better behaved in the way it's threads interact.

I note that SAP Sybase say the following in their documentation (link - http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.dc32518.1571200/doc/html/sa... )

>In some cases, there is evidence that making too many processors available to Replication Server can actually decrease performance. In such cases, >the issue seems to be the amount of time taken to force thread context switches among the available processors. Use your operating system (OS) >monitoring utilities to monitor the operating system management of the Replication Server process and its threads. These utilities will help you determine >if a reduction in CPUs made available to Replication Server reduces the number of such context switches.

I have 17 repservers, the largest has 30 DSIs on it.  The calculations in the above link I'd need 2 + 30/4 = 9 Cores for this repserver.  All the repservers run co-located with ASE instances on 32 core hosts (x86-64 RH 5.5).

Has anyone gone to prod with any form of OS CPU resource limiting when deploying RS 15.7 ?

thanks,

Jason.

jason_s_symonds
Discoverer
0 Kudos

Hi Mike,

These repservers are running on Linux x86-64 commodity hardware directly and using Veritas Cluster Services to provide HA failover.

Cheers,

Jason.

Mark_A_Parsons
Contributor
0 Kudos

Many eons ago I was at a client where we used Solaris' pbind and psrset to affinity some repservers to a specific set of CPUs.

I think the Linux equivalent would be the taskset command (I haven't used linux/taskset mysefl).  A quick google search provides links like:

http://www.cyberciti.biz/faq/taskset-cpu-affinity-command/

and

http://acidborg.wordpress.com/2010/10/14/how-to-bind-a-process-to-a-specific-cpus-on-gnulinux/

-----------

Obviously (?) repserver is still going to look for enough licenses for all of the cores, unless you can get sub-capacity licensing to work on your platform.

Accepted Solutions (0)

Answers (2)

Answers (2)

sladebe
Active Participant
0 Kudos

I'm using the "taskset" command.   You need to add something like this to the run file:

taskset --cpu-list 0-3  <mydir>/REP-15_5/bin/repserver -S<servername> \

...snip...

This example limits the SMP enabled repserver to the 1st 4 CPUs (or cores, as the case may be)

Seems to work fine for me.

Ben Slade

NCBI.NLM.NIH.gov

ricardo_murcia
Explorer
0 Kudos

Hi Jason,

Perhaps you could consider using KVM ?

Ricardo