From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on sa.local.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-1.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS autolearn=no autolearn_force=no version=3.4.1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:date:from:to:subject:message-id:references:mime-version :content-disposition:content-transfer-encoding:in-reply-to; bh=Dz/8y1XWNQYobIjZjewSWwMXOVr/sqc8mrBfK44Hvas=; b=rrRpbCGpOvnK+KpL525r6mg5Wsy+RMMm7RicBL2sX+vdDXOU8ccpYKxmWZXP81jnRw oRgSjJDZnbFkh5XbK0Sh/ehz7hVqUH0dDsmXNE7Q1qFXRUFWWRDpLu+kX3IUyD85ZsAz 1RObqH+ZtzbOEheY9NaFDz+r3mm5IN8CpHNs94p0agBj16+8bS/SLC8csxcuNHWVjGnh QFrdESmjo1vkhmMyq4Z9hCDx4sFXlhoomU7WzC8hyYW/WIpqN0B5VUtAfAnW4PksWS41 gTUPo6jCxcf33qk1hitT5PJcC4+yhSIRYDCMLE6Tihuk/jRdO8eaPKm05hpG11X3pl5t bwCA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:date:from:to:subject:message-id :references:mime-version:content-disposition :content-transfer-encoding:in-reply-to; bh=Dz/8y1XWNQYobIjZjewSWwMXOVr/sqc8mrBfK44Hvas=; b=BRVQTauqyTkWHh3+fBygxQVvcPh/Ff8hGe1YfKLqjULrKkVgbMR/vW8TBJEjnym5SR mEg8Y/ItE7Qs2g8WG81mlw+Jotd3Blf+HmiFfrnvXaMJXG2te81mI4ramiczWaJoUqvH FSv+1DXzA+OUDK66Cv3lzSpMbjqo+ToIylx2sVqnluhRFOdvzUR34l7o01G6CUnuaDM+ A6ByS4Hb/sn/KS60TwL9svseCuQiiLjwHPQe/Tscr1UPwHmb2Uw7bqYxTwwOX73sghBp ZqFyuAOKUetVzwu0fi/so36R6lq/E7Kfz6G44Vs/6mjVg4uiCBgNcrcc6eGoL27U0hs5 Beaw== X-Gm-Message-State: AOAM532o+0gjgupWF3ZL7XfiYP33kyTCgopigKg2IICccviNVbC6vUVB DeouZaczp7s4Wmts5OAipVNFC4uO/QsMxg== X-Google-Smtp-Source: ABdhPJzTk3y4kYJ+PP5pG088lYZLyMxE39HczFW2m+Zp9T+1sACgyliwO/oFQccestPgLN0fCwNcAw== X-Received: by 2002:a05:651c:543:: with SMTP id q3mr15086924ljp.6.1600681786888; Mon, 21 Sep 2020 02:49:46 -0700 (PDT) Sender: "Ivan A. Melnikov" Date: Mon, 21 Sep 2020 13:49:44 +0400 From: "Ivan A. Melnikov" To: ALT Linux Team development discussions Message-ID: <20200921094944.ixk2d3efmfhslg47@titan.localdomain> References: <20200920103655.GA26263@imap.altlinux.org> <20200920132814.GC26263@imap.altlinux.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20200920132814.GC26263@imap.altlinux.org> Subject: Re: [devel] =?utf-8?b?0L/QsNC60LXRgtGLINC00LvRjyDRh9C40YHQu9C10L0=?= =?utf-8?b?0L3QvtCz0L4g0YHRh9C10YLQsA==?= X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Sep 2020 09:49:50 -0000 Archived-At: List-Archive: List-Post: On Sun, Sep 20, 2020 at 04:28:14PM +0300, Vladislav Zavjalov wrote: > Еще поразбирался с Blas/Lapack. Это старые-добрые фортрановские библиотеки > "Basic Linear Algebra Subroutines" и "Linear Algebra PACKage" - > работа с матрицами, и решение систем линейных уравнений. Lapack использует Blas. > > У нас сейчас есть следующее: > > * blas -- "стандартный" blas. > http://www.netlib.org/blas/ > > * liblapack -- "стандартный" lapack. У нас собран с openblas. > http://www.netlib.org/lapack/ > > * openblas -- Оптимизированная версия Blas, с поддержкой > многопоточных вычислений и т.п. > https://github.com/xianyi/OpenBLAS > > Openblas может и сам предоставлять стандартный lapack, но у нас он собран с ключом > NO_LAPACK=1. При этом в заголовочные файлы функции из lapack попадают, а > в библиотеку - нет. В результате, при сборке разных программ возникают > проблемы на этапе линковки, даже если liblapack-devel есть в системе. > Приходится вручную указывать, что линковаться надо с libopenblas + liblapack. > > * libatlas -- Оптимизированный blas + небольшая часть lapack. > http://math-atlas.sourceforge.net/ > > У нас очень старая версия, собирается только под i586 и x86_64. > Это довольно странная библиотека, и я не уверен, что > ее следует держать в репозитории. Дело в том, что она оптимизирует функции из > blas/lapack под конкретный процессор - на этапе сборки. Насколько я понял, она может при сборке погонять бенчмарки в процессе сборки, и выбрать варианты релизации, лучше подходящие для конкретного железа, но при сборке именно пакета этого не делается, а используются готовые профили, оптимизированные под некое обобщённое непонятно что. > Не очень понятно, > имеют ли эти оптимизации смысл при распространении в виде бинарных пакетов. > Например, явно написано, что оптимизации будут бессмысленны при включенном > CPU throttling и лучше тогда использовать обычный blas. > Как сделать "правильную" сборку - не очень понятно. > > > Не уверен, что я понял все тонкости. Пока мне кажется разумным следующее: > > * Исправить openblas, чтобы с NO_LAPACK=1 он не делал вид, что > предоставляет lapack. > Если это сложно, то использовать его встроенный lapack + > отвязать liblapack от openblas. > > * Может быть, удалить blas + liblapack и использовать только openblas. openblas традиционно не умеет mipsel, и, кажется, riscv. Под mipsel её собрать вроде бы можно парой нехитрых патчей, но я что-то не решился, так как непонятны критерии работоспособности, приемлимости и всего такого. С другой стороны, идея одного дистрибутивного blas и lapack выглядит очень привлекательной. > * Удалить libatlas, пересобрав клиентов с openblas. > > Еще бы понять, какие клиенты используют эти библиотеки... > > _______________________________________________ > Devel mailing list > Devel@lists.altlinux.org > https://lists.altlinux.org/mailman/listinfo/devel