lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20140530120424.GD30445@twins.programming.kicks-ass.net>
Date:	Fri, 30 May 2014 14:04:24 +0200
From:	Peter Zijlstra <peterz@...radead.org>
To:	Morten Rasmussen <morten.rasmussen@....com>
Cc:	linux-kernel@...r.kernel.org, linux-pm@...r.kernel.org,
	mingo@...nel.org, rjw@...ysocki.net, vincent.guittot@...aro.org,
	daniel.lezcano@...aro.org, preeti@...ux.vnet.ibm.com,
	dietmar.eggemann@....com
Subject: Re: [RFC PATCH 06/16] arm: topology: Define TC2 sched energy and
 provide it to scheduler

On Fri, May 23, 2014 at 07:16:33PM +0100, Morten Rasmussen wrote:
> +static struct capacity_state cap_states_cluster_a7[] = {
> +	/* Cluster only power */
> +	 { .cap =  358, .power = 2967, }, /*  350 MHz */
> +	 { .cap =  410, .power = 2792, }, /*  400 MHz */
> +	 { .cap =  512, .power = 2810, }, /*  500 MHz */
> +	 { .cap =  614, .power = 2815, }, /*  600 MHz */
> +	 { .cap =  717, .power = 2919, }, /*  700 MHz */
> +	 { .cap =  819, .power = 2847, }, /*  800 MHz */
> +	 { .cap =  922, .power = 3917, }, /*  900 MHz */
> +	 { .cap = 1024, .power = 4905, }, /* 1000 MHz */
> +	};

> +static struct capacity_state cap_states_core_a7[] = {
> +	/* Power per cpu */
> +	 { .cap =  358, .power =  187, }, /*  350 MHz */
> +	 { .cap =  410, .power =  275, }, /*  400 MHz */
> +	 { .cap =  512, .power =  334, }, /*  500 MHz */
> +	 { .cap =  614, .power =  407, }, /*  600 MHz */
> +	 { .cap =  717, .power =  447, }, /*  700 MHz */
> +	 { .cap =  819, .power =  549, }, /*  800 MHz */
> +	 { .cap =  922, .power =  761, }, /*  900 MHz */
> +	 { .cap = 1024, .power = 1024, }, /* 1000 MHz */
> +	};

Talk to me about this core vs cluster thing.

Why would an architecture have multiple energy domains like this?

That is, if a cpu can set P states per core, why does it need a cluster
wide thing.

Also, in general, why would we need to walk the domain tree all the way
up, typically I would expect to stop walking once we've covered the two
cpu's we're interested in, because above that nothing changes.

Content of type "application/pgp-signature" skipped

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ