unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH 0/2] Add cpupower
@ 2016-07-19  2:45 Tobias Geerinckx-Rice
  2016-07-19  2:45 ` [PATCH 1/2] gnu: " Tobias Geerinckx-Rice
  2016-07-19  2:45 ` [PATCH 2/2] gnu: atlas: Use cpupower in description Tobias Geerinckx-Rice
  0 siblings, 2 replies; 13+ messages in thread
From: Tobias Geerinckx-Rice @ 2016-07-19  2:45 UTC (permalink / raw)
  To: guix-devel

Hullo Guix,

I was surprised not to find cpupower available. It's a replacement
for the older cpufrequtils package. I didn't much feel like
re-writing my scripts or muscle memory, so I wrote a quick package.

I also rewrote the ‘atlas’ description to use that, instead of
a cpufreq-selector command for each separate core.

Kind regards,

T G-R

Tobias Geerinckx-Rice (2):
  gnu: Add cpupower.
  gnu: atlas: Use cpupower in description.

 gnu/packages/linux.scm | 38 ++++++++++++++++++++++++++++++++++++++
 gnu/packages/maths.scm |  9 +++------
 2 files changed, 41 insertions(+), 6 deletions(-)

-- 
2.9.0

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH 1/2] gnu: Add cpupower.
  2016-07-19  2:45 [PATCH 0/2] Add cpupower Tobias Geerinckx-Rice
@ 2016-07-19  2:45 ` Tobias Geerinckx-Rice
  2016-07-19 20:59   ` Ludovic Courtès
  2016-07-19  2:45 ` [PATCH 2/2] gnu: atlas: Use cpupower in description Tobias Geerinckx-Rice
  1 sibling, 1 reply; 13+ messages in thread
From: Tobias Geerinckx-Rice @ 2016-07-19  2:45 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/linux.scm (cpupower): New variable.
---
 gnu/packages/linux.scm | 38 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)

diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index d20314f..8b8d8d6 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -2752,3 +2752,41 @@ from that to the system kernel's @file{/dev/random} machinery.")
     ;; The source package is offered under the GPL2+, but the files
     ;; 'rngd_rdrand.c' and 'rdrand_asm.S' are only available under the GPL2.
     (license (list license:gpl2 license:gpl2+))))
+
+(define-public cpupower
+  (package
+    (name "cpupower")
+    (version (package-version linux-libre))
+    (source (package-source linux-libre))
+    (build-system gnu-build-system)
+    (arguments
+     '(#:phases (modify-phases %standard-phases
+                  (add-after 'unpack 'enter-subdirectory
+                    (lambda _
+                      (chdir "tools/power/cpupower")))
+                  (delete 'configure)
+                  (add-before 'build 'fix-makefiles
+                    (lambda _
+                      (substitute* "Makefile"
+                        (("/usr/") "/")
+                        (("/bin/(install|pwd)" _ command) command))
+                      (substitute* "bench/Makefile"
+                        (("\\$\\(CC\\) -o") "$(CC) $(LDFLAGS) -o")))))
+       #:make-flags (let ((out (assoc-ref %outputs "out")))
+                      (list (string-append "DESTDIR=" out)
+                            (string-append "LDFLAGS=-Wl,-rpath=" out "/lib")
+                            "docdir=/share/doc/cpupower"
+                            "confdir=$(docdir)/examples"
+                            ;; The Makefile recommends the following changes
+                            "DEBUG=false"
+                            "PACKAGE_BUGREPORT=bug-guix@gnu.org"))
+       #:tests? #f)) ;no tests
+    (inputs `(("gettext" ,gnu-gettext)
+              ("pciutils" ,pciutils)))
+    (home-page (package-home-page linux-libre))
+    (synopsis "CPU frequency and voltage scaling tools for Linux")
+    (description
+     "cpupower is a set of user-space tools that use the cpufreq feature of the
+Linux kernel to retrieve and control processor features related to power saving,
+such as frequency and voltage scaling.")
+    (license license:gpl2)))
-- 
2.9.0

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH 2/2] gnu: atlas: Use cpupower in description.
  2016-07-19  2:45 [PATCH 0/2] Add cpupower Tobias Geerinckx-Rice
  2016-07-19  2:45 ` [PATCH 1/2] gnu: " Tobias Geerinckx-Rice
@ 2016-07-19  2:45 ` Tobias Geerinckx-Rice
  2016-07-19 21:00   ` Ludovic Courtès
  1 sibling, 1 reply; 13+ messages in thread
From: Tobias Geerinckx-Rice @ 2016-07-19  2:45 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/maths.scm (atlas)[description]: Replace 'cpufreq-selector'
with its replacement 'cpupower --governor'.
---
 gnu/packages/maths.scm | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 643bce5..776963e 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -2120,14 +2120,11 @@ Optimization occurs at build time.  For this reason, the library is built on
 the machine where it is installed, without resorting to pre-built substitutes.
 
 Before building the library, CPU throttling should be disabled.  This can be
-done in the BIOS, or, on GNU/Linux, with the following commands:
+done in the BIOS, or, on GNU/Linux, with the following command:
 
-cpufreq-selector -g performance -c 0
-...
-cpufreq-selector -g performance -c N-1
+# cpupower --governor performance
 
-where N is the number of cores of your CPU.  Failure to do so will result in a
-library with poor performance.")
+Failure to do so will result in a library with poor performance.")
     (license license:bsd-3)))
 
 (define-public glm
-- 
2.9.0

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* Re: [PATCH 1/2] gnu: Add cpupower.
  2016-07-19  2:45 ` [PATCH 1/2] gnu: " Tobias Geerinckx-Rice
@ 2016-07-19 20:59   ` Ludovic Courtès
  2016-07-19 21:13     ` Tobias Geerinckx-Rice
  0 siblings, 1 reply; 13+ messages in thread
From: Ludovic Courtès @ 2016-07-19 20:59 UTC (permalink / raw)
  To: Tobias Geerinckx-Rice; +Cc: guix-devel

Tobias Geerinckx-Rice <me@tobias.gr> skribis:

> * gnu/packages/linux.scm (cpupower): New variable.

[...]

> +    (inputs `(("gettext" ,gnu-gettext)
> +              ("pciutils" ,pciutils)))

I made Gettext a ‘native-inputs’ and applied.

Thanks!

Ludo’.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 2/2] gnu: atlas: Use cpupower in description.
  2016-07-19  2:45 ` [PATCH 2/2] gnu: atlas: Use cpupower in description Tobias Geerinckx-Rice
@ 2016-07-19 21:00   ` Ludovic Courtès
  2016-07-19 21:33     ` Tobias Geerinckx-Rice
  0 siblings, 1 reply; 13+ messages in thread
From: Ludovic Courtès @ 2016-07-19 21:00 UTC (permalink / raw)
  To: Tobias Geerinckx-Rice; +Cc: guix-devel

Tobias Geerinckx-Rice <me@tobias.gr> skribis:

> * gnu/packages/maths.scm (atlas)[description]: Replace 'cpufreq-selector'
> with its replacement 'cpupower --governor'.

Applied, thanks!

Ludo’.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 1/2] gnu: Add cpupower.
  2016-07-19 20:59   ` Ludovic Courtès
@ 2016-07-19 21:13     ` Tobias Geerinckx-Rice
  2016-07-19 22:01       ` Eric Bavier
  0 siblings, 1 reply; 13+ messages in thread
From: Tobias Geerinckx-Rice @ 2016-07-19 21:13 UTC (permalink / raw)
  To: ludo; +Cc: guix-devel

Ludo',

On 2016-07-19 22:59, ludo@gnu.org wrote:
> I made Gettext a ‘native-inputs’ and applied.

Thanks. I am genuinely puzzled as to why I put it in ‘inputs’ to
begin with.

Isn't gettext almost always a should-be-native-input?
If so, I'll try my hand at a linter patch.

Kind regards,

T G-R

-- 
Sent from a web browser. Excuse my brevity.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 2/2] gnu: atlas: Use cpupower in description.
  2016-07-19 21:00   ` Ludovic Courtès
@ 2016-07-19 21:33     ` Tobias Geerinckx-Rice
  2016-07-19 21:47       ` Mathieu Lirzin
  0 siblings, 1 reply; 13+ messages in thread
From: Tobias Geerinckx-Rice @ 2016-07-19 21:33 UTC (permalink / raw)
  To: ludo; +Cc: guix-devel

Ludo',

On 2016-07-19 23:00, ludo@gnu.org wrote:
> Applied, thanks!

Thanks! I didn't know about @example.

It seems like some Texinfo syntax is encouraged (like @command), but
not the full set (package descriptions are full of abbreviations,
but no @abbr or @acronym anywhere). Is this by design?

More would certainly help get to the recommended 5-10 lines... :-)

Kind regards,

T G-R

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 2/2] gnu: atlas: Use cpupower in description.
  2016-07-19 21:33     ` Tobias Geerinckx-Rice
@ 2016-07-19 21:47       ` Mathieu Lirzin
  2016-07-28 22:59         ` ng0
  0 siblings, 1 reply; 13+ messages in thread
From: Mathieu Lirzin @ 2016-07-19 21:47 UTC (permalink / raw)
  To: Tobias Geerinckx-Rice; +Cc: guix-devel

Tobias Geerinckx-Rice <me@tobias.gr> writes:

> Ludo',
>
> On 2016-07-19 23:00, ludo@gnu.org wrote:
>> Applied, thanks!
>
> Thanks! I didn't know about @example.
>
> It seems like some Texinfo syntax is encouraged (like @command), but
> not the full set (package descriptions are full of abbreviations,
> but no @abbr or @acronym anywhere). Is this by design?

Nope it is not by design, the Guile (texinfo ...) modules just don't
implement these commands from GNU Texinfo, but should indeed.

-- 
Mathieu Lirzin

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 1/2] gnu: Add cpupower.
  2016-07-19 21:13     ` Tobias Geerinckx-Rice
@ 2016-07-19 22:01       ` Eric Bavier
  0 siblings, 0 replies; 13+ messages in thread
From: Eric Bavier @ 2016-07-19 22:01 UTC (permalink / raw)
  To: Tobias Geerinckx-Rice; +Cc: guix-devel, Guix-devel

On 2016-07-19 16:13, Tobias Geerinckx-Rice wrote:
> Ludo',
> 
> On 2016-07-19 22:59, ludo@gnu.org wrote:
>> I made Gettext a ‘native-inputs’ and applied.
> 
> Thanks. I am genuinely puzzled as to why I put it in ‘inputs’ to
> begin with.
> 
> Isn't gettext almost always a should-be-native-input?
> If so, I'll try my hand at a linter patch.

Not always.  I'm working on a package currently whose primary tool is a 
shell script that calls gettext at runtime for i18n.

-- 
`~Eric

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 2/2] gnu: atlas: Use cpupower in description.
  2016-07-19 21:47       ` Mathieu Lirzin
@ 2016-07-28 22:59         ` ng0
  2016-07-29  8:22           ` Mathieu Lirzin
  0 siblings, 1 reply; 13+ messages in thread
From: ng0 @ 2016-07-28 22:59 UTC (permalink / raw)
  To: guix-devel

Mathieu Lirzin <mthl@gnu.org> writes:

> Tobias Geerinckx-Rice <me@tobias.gr> writes:
>
>> Ludo',
>>
>> On 2016-07-19 23:00, ludo@gnu.org wrote:
>>> Applied, thanks!
>>
>> Thanks! I didn't know about @example.
>>
>> It seems like some Texinfo syntax is encouraged (like @command), but
>> not the full set (package descriptions are full of abbreviations,
>> but no @abbr or @acronym anywhere). Is this by design?
>
> Nope it is not by design, the Guile (texinfo ...) modules just don't
> implement these commands from GNU Texinfo, but should indeed.
>
> -- 
> Mathieu Lirzin
>

Is there a feature request / bug we could file somewhere on this? I
don't know what the upstream of Guile texinfo is, but it reads like it
should be extended.
-- 
♥Ⓐ  ng0
Current Keys: https://we.make.ritual.n0.is/ng0.txt
For non-prism friendly talk find me on http://www.psyced.org

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 2/2] gnu: atlas: Use cpupower in description.
  2016-07-28 22:59         ` ng0
@ 2016-07-29  8:22           ` Mathieu Lirzin
  2016-07-29  8:35             ` ng0
  0 siblings, 1 reply; 13+ messages in thread
From: Mathieu Lirzin @ 2016-07-29  8:22 UTC (permalink / raw)
  To: ng0; +Cc: guix-devel

Hello,

ng0 <ng0@we.make.ritual.n0.is> writes:

> Mathieu Lirzin <mthl@gnu.org> writes:
>
>> Tobias Geerinckx-Rice <me@tobias.gr> writes:
>>
>>> Ludo',
>>>
>>> On 2016-07-19 23:00, ludo@gnu.org wrote:
>>>> Applied, thanks!
>>>
>>> Thanks! I didn't know about @example.
>>>
>>> It seems like some Texinfo syntax is encouraged (like @command), but
>>> not the full set (package descriptions are full of abbreviations,
>>> but no @abbr or @acronym anywhere). Is this by design?
>>
>> Nope it is not by design, the Guile (texinfo ...) modules just don't
>> implement these commands from GNU Texinfo, but should indeed.
>>
>> -- 
>> Mathieu Lirzin
>>
>
> Is there a feature request / bug we could file somewhere on this? I
> don't know what the upstream of Guile texinfo is, but it reads like it
> should be extended.

Guile texinfo is maintained in Guile itself.  You can send a bug report
to <bug-guile@gnu.org>.

Thanks!

-- 
Mathieu Lirzin

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 2/2] gnu: atlas: Use cpupower in description.
  2016-07-29  8:22           ` Mathieu Lirzin
@ 2016-07-29  8:35             ` ng0
  2016-08-14  6:24               ` Pjotr Prins
  0 siblings, 1 reply; 13+ messages in thread
From: ng0 @ 2016-07-29  8:35 UTC (permalink / raw)
  To: guix-devel

Mathieu Lirzin <mthl@gnu.org> writes:

> Hello,
>
> ng0 <ng0@we.make.ritual.n0.is> writes:
>
>> Mathieu Lirzin <mthl@gnu.org> writes:
>>
>>> Tobias Geerinckx-Rice <me@tobias.gr> writes:
>>>
>>>> Ludo',
>>>>
>>>> On 2016-07-19 23:00, ludo@gnu.org wrote:
>>>>> Applied, thanks!
>>>>
>>>> Thanks! I didn't know about @example.
>>>>
>>>> It seems like some Texinfo syntax is encouraged (like @command), but
>>>> not the full set (package descriptions are full of abbreviations,
>>>> but no @abbr or @acronym anywhere). Is this by design?
>>>
>>> Nope it is not by design, the Guile (texinfo ...) modules just don't
>>> implement these commands from GNU Texinfo, but should indeed.
>>>
>>> -- 
>>> Mathieu Lirzin
>>>
>>
>> Is there a feature request / bug we could file somewhere on this? I
>> don't know what the upstream of Guile texinfo is, but it reads like it
>> should be extended.
>
> Guile texinfo is maintained in Guile itself.  You can send a bug report
> to <bug-guile@gnu.org>.
>
> Thanks!
>
> -- 
> Mathieu Lirzin


Thanks.

I could, but I have no time to interact with it due to personal
resources.
It would be better if someone else did this.
-- 
♥Ⓐ  ng0
Current Keys: https://we.make.ritual.n0.is/ng0.txt
For non-prism friendly talk find me on http://www.psyced.org

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 2/2] gnu: atlas: Use cpupower in description.
  2016-07-29  8:35             ` ng0
@ 2016-08-14  6:24               ` Pjotr Prins
  0 siblings, 0 replies; 13+ messages in thread
From: Pjotr Prins @ 2016-08-14  6:24 UTC (permalink / raw)
  To: ng0; +Cc: guix-devel

   M=5360, N=5360, lda=5360, NB=24
   FINDING NB FOR M=5440, N=5440, LDA=5440:
      nb=80: 21451.30 --> 21451.30 MFLOP.

      NB refinement search:
      *** i=8, nbB=80, NB=80, mul1=8, mul2=0 ***
      nb=8: 7003.41  --> 7003.41 MFLOP.
      nb=16: 1278.46  --> 1278.46 MFLOP.
      nb=24: 1540.06  --> 1540.06 MFLOP.
      nb=32: 3296.98  --> 3296.98 MFLOP.
      nb=40: 24713.32  --> 24713.32 MFLOP.
      nb=48: 26342.54  --> 26342.54 MFLOP.
      nb=56: 26221.28  --> 26221.28 MFLOP.
      nb=64: 28333.27  --> 28333.27 MFLOP.
      nb=72: 4903.17  --> 4903.17 MFLOP.
      nb=80: 4536.84  --> 4536.84 MFLOP.
      nb=88: 4924.19  --> 4924.19 MFLOP.
      nb=96: 5507.97  --> 5507.97 MFLOP.
      nb=104: 7172.10  --> 7172.10 MFLOP.
      nb=112: 59322.21  --> 59322.21 MFLOP.
      nb=120: 68613.85  --> 68613.85 MFLOP.
      nb=128: 65228.73  --> 65228.73 MFLOP.
      nb=136: 70809.52  --> 70809.52 MFLOP.
      nb=144: 72456.07  --> 72456.07 MFLOP.

    building of `/gnu/store/hrr2bzzlvl9aivrd6dnh7sncgbbx9awf-atlas-3.10.2.drv' timed out after 3600 seconds of silence

That on a 56 core machine with a TESLA on board...

Disabling tests.

Pj.

On Fri, Jul 29, 2016 at 08:35:47AM +0000, ng0 wrote:
> Mathieu Lirzin <mthl@gnu.org> writes:
> 
> > Hello,
> >
> > ng0 <ng0@we.make.ritual.n0.is> writes:
> >
> >> Mathieu Lirzin <mthl@gnu.org> writes:
> >>
> >>> Tobias Geerinckx-Rice <me@tobias.gr> writes:
> >>>
> >>>> Ludo',
> >>>>
> >>>> On 2016-07-19 23:00, ludo@gnu.org wrote:
> >>>>> Applied, thanks!
> >>>>
> >>>> Thanks! I didn't know about @example.
> >>>>
> >>>> It seems like some Texinfo syntax is encouraged (like @command), but
> >>>> not the full set (package descriptions are full of abbreviations,
> >>>> but no @abbr or @acronym anywhere). Is this by design?
> >>>
> >>> Nope it is not by design, the Guile (texinfo ...) modules just don't
> >>> implement these commands from GNU Texinfo, but should indeed.
> >>>
> >>> -- 
> >>> Mathieu Lirzin
> >>>
> >>
> >> Is there a feature request / bug we could file somewhere on this? I
> >> don't know what the upstream of Guile texinfo is, but it reads like it
> >> should be extended.
> >
> > Guile texinfo is maintained in Guile itself.  You can send a bug report
> > to <bug-guile@gnu.org>.
> >
> > Thanks!
> >
> > -- 
> > Mathieu Lirzin
> 
> 
> Thanks.
> 
> I could, but I have no time to interact with it due to personal
> resources.
> It would be better if someone else did this.
> -- 
> ♥Ⓐ  ng0
> Current Keys: https://we.make.ritual.n0.is/ng0.txt
> For non-prism friendly talk find me on http://www.psyced.org
> 

-- 

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2016-08-14  6:25 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-07-19  2:45 [PATCH 0/2] Add cpupower Tobias Geerinckx-Rice
2016-07-19  2:45 ` [PATCH 1/2] gnu: " Tobias Geerinckx-Rice
2016-07-19 20:59   ` Ludovic Courtès
2016-07-19 21:13     ` Tobias Geerinckx-Rice
2016-07-19 22:01       ` Eric Bavier
2016-07-19  2:45 ` [PATCH 2/2] gnu: atlas: Use cpupower in description Tobias Geerinckx-Rice
2016-07-19 21:00   ` Ludovic Courtès
2016-07-19 21:33     ` Tobias Geerinckx-Rice
2016-07-19 21:47       ` Mathieu Lirzin
2016-07-28 22:59         ` ng0
2016-07-29  8:22           ` Mathieu Lirzin
2016-07-29  8:35             ` ng0
2016-08-14  6:24               ` Pjotr Prins

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).