Re: cgroup kernel API question

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

On Thu, Aug 04, 2016 at 05:58:42PM +0000, Joshi, Venu wrote:
> Our database server creates a sub directory (say TeradataCgroup)
> under the root cgroup and manages all processes/tasks and ensures
> proper synchronization across multiple accessors.  These

Your application may be doing that but what's preventing userland from
being in the middle of racing cgroup operations?  This may work for a
particular setup but given the current interface it's difficult to
expose something like this as a part of general API.

> processes/tasks may create further sub-directories under
> /root-cgroup/TeradataCgroup/ with different cpu.share values.  The
> tasks constantly migrate to different cgroups at different
> hierarchical levels based on the priority of the user

This isn't a particularly good way to use cgroup because migrations
are expensive and possibly high-latency operations.  It often is that
there are trade-offs between migration overhead and hot path overhead
and obviously lowering hot path overhead takes precedence.  Another
factor is that some resources are stateful and migrating don't migrate
the existing charges messing up accounting.  From cgroup's pov, it'd
be better to have a per-cgroup workerpool and dispatching jobs to them
accordingly.

> SQL/query/request.  All this happens when the tasks have trapped
> into the kernel mode via a syscall.
> 
> Our Teradata Database server is a highly parallel application and
> uses kernel mode synchronization APIs (spinlocks etc.,) via a kernel
> mode driver extension to achieve synchronization.  Hence we mostly
> try to use Kernel API for key operations.  In our application,
> cgroup operations are never done in userland to avoid the problem
> you mentioned below (severely confusing userland that is trying to
> use the cgroups too).

I'm not sure how performing operations from kernel improves the
situation tho.

Thanks.

-- 
tejun
--
To unsubscribe from this list: send the line "unsubscribe cgroups" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]     [Monitors]

  Powered by Linux