public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
From: "Tony Kelman" <tony@kelman.net>
To: <cygwin@cygwin.com>
Subject: Re: Tester for openblas needed
Date: Tue, 21 Oct 2014 17:49:00 -0000	[thread overview]
Message-ID: <BAY169-DS130B4038A6BB6C3F00B23AA7940@phx.gbl> (raw)
In-Reply-To: <87iojdpdev.fsf@Rainer.invalid>

> It should determine the number of cores at runtime as well as the level
> of SSE/AVX support: i686 starts with the PentiumPro, which didn't have
> SSE.  Fixing this at compile time is nice for local builds, but no good
> for packages.

As long as you set DYNAMIC_ARCH=1 (which Marco did), openblas does
exactly this when it comes to SIMD instruction sets (and more details
like tuning for different cache sizes, etc). They have optimized routines
for this list of processor families:
https://github.com/xianyi/OpenBLAS/blob/ac5a7e1c1bb75d1accfb83c394e1535b5ff170d2/driver/others/dynamic.c#L296-L318
the right implementation gets used based on runtime detection, which is
why the compiled dll is much larger than reference netlib blas.

Hopefully the number of threads you set at build time is just a maximum.
The library is explicitly designed so you can control the number of
threads used at runtime. What we're not sure about is what happens in
the default case when you don't manually set the number of threads.

-Tony


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

  reply	other threads:[~2014-10-21 17:49 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-20 13:20 Marco Atzeri
2014-10-20 14:00 ` Tony Kelman
2014-10-20 14:34   ` Marco Atzeri
2014-10-20 16:16     ` Tony Kelman
2014-10-20 21:57       ` Marco Atzeri
2014-10-20 23:33         ` Tony Kelman
2014-10-21  5:48           ` Marco Atzeri
2014-10-21 11:56             ` Marco Atzeri
2014-10-21 12:39               ` Tony Kelman
2014-10-21 14:01                 ` Marco Atzeri
2014-10-21 16:59               ` Achim Gratz
2014-10-21 17:49                 ` Tony Kelman [this message]
2014-10-21 18:32                   ` Marco Atzeri
2014-10-21 18:03                 ` Marco Atzeri
2014-10-21 13:29         ` Marco Atzeri

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=BAY169-DS130B4038A6BB6C3F00B23AA7940@phx.gbl \
    --to=tony@kelman.net \
    --cc=cygwin@cygwin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).