From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id mCwUBEZFWmAHfgAA0tVLHw (envelope-from ) for ; Tue, 23 Mar 2021 19:45:10 +0000 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id CDxsO0VFWmALTAAAB5/wlQ (envelope-from ) for ; Tue, 23 Mar 2021 19:45:09 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id A539C1A94F for ; Tue, 23 Mar 2021 20:45:09 +0100 (CET) Received: from localhost ([::1]:49950 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lOmxg-0007bC-4P for larch@yhetil.org; Tue, 23 Mar 2021 15:45:08 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:36714) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lOmvf-0005T9-8C for guix-patches@gnu.org; Tue, 23 Mar 2021 15:43:04 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:49724) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lOmve-0001D2-UT; Tue, 23 Mar 2021 15:43:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1lOmve-000817-MH; Tue, 23 Mar 2021 15:43:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#47350] [PATCH 00/29] Add Zygote (piece for Machine Learning with Julia) Resent-From: zimoun Original-Sender: "Debbugs-submit" Resent-CC: anothersms@gmail.com, ludo@gnu.org, guix-patches@gnu.org Resent-Date: Tue, 23 Mar 2021 19:43:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 47350 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 47350@debbugs.gnu.org Cc: zimoun , , X-Debbugs-Original-To: guix-patches@gnu.org X-Debbugs-Original-Xcc: , Received: via spool by submit@debbugs.gnu.org id=B.161652855230767 (code B ref -1); Tue, 23 Mar 2021 19:43:02 +0000 Received: (at submit) by debbugs.gnu.org; 23 Mar 2021 19:42:32 +0000 Received: from localhost ([127.0.0.1]:33035 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lOmvA-00080A-5a for submit@debbugs.gnu.org; Tue, 23 Mar 2021 15:42:32 -0400 Received: from lists.gnu.org ([209.51.188.17]:48394) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lOmv4-0007zy-Uz for submit@debbugs.gnu.org; Tue, 23 Mar 2021 15:42:31 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:36500) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lOmv4-0004lL-Kn for guix-patches@gnu.org; Tue, 23 Mar 2021 15:42:26 -0400 Received: from mail-wm1-x32f.google.com ([2a00:1450:4864:20::32f]:44832) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lOmv2-0000zn-8j for guix-patches@gnu.org; Tue, 23 Mar 2021 15:42:26 -0400 Received: by mail-wm1-x32f.google.com with SMTP id j4-20020a05600c4104b029010c62bc1e20so11507570wmi.3 for ; Tue, 23 Mar 2021 12:42:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=e3O0xm2+ckbYdC94b0F39TRrZq1N7MazxajVwaLZC9U=; b=DXZr/tag5MADv8UFwVh0/xy26cDIkQ2vXUX3RMZRHEkaL/FVBmBh6eY0bC84rd+IpM GsXW4OK3mPsTPucmvU/txi+VXbGpWUlZrRE6dbRUrp9IetTUjNxUPXTMPAovqfN/BKt6 AwtiBjWIVKGAbozO7BI1vKdOpvgApa8FvQ+epPZIhUIUbqL7ToSjBCCQ5AZRsGuV0T3a +nWmpimVB8FEJLLg9z1LnddRmaW3uFxZV/ysTEqVeupa65HIsiiB61gjMRRqZ0X4o9NE PtSz6MrkJD4bZzZbN6cd34Og9a8IKHgkptAwWAi5Ap3ndcg2GJ2Uuu1IthewhEdCbBba 0RxA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=e3O0xm2+ckbYdC94b0F39TRrZq1N7MazxajVwaLZC9U=; b=RmjFRfhVycZHRWTY1OmovOKHzDVqCA9jc68as3iXlJJI/awHNmLGX+OyCrUSPsCETJ HYEeGGqzBe2l99cnCv+yyMWdZ7WYMhgCNA6WE7WuUT84egPKwj1/0FCQslu0YgIImeka U2fp9HQzEU7T8gKx6XlYkRneOMNTdRIg75e+lq1J9j9iUrAkSQqN/B+0PeuCps8FRSkg LMHwwsnSdj7rDVFUjL+1aispZqcwzNPkvWBZtKHqoXZ12pzGC9l4sJkfZt0cwH4ARb+x 0Ebdd4T1txr5BbA3xJy07ml5XjqjrWm8U1Ld8EDwr9B9bk5Z+l4qdG0z5ExqS7+1DO0i c8Zw== X-Gm-Message-State: AOAM530VR/5SvAZcDuLcm4MT8DFUK2WzxE4ut79+s9B8rf700IFE03Jc 6Z4yUm1Pyak0M7ZVDC+qIAVB1dvJAp8= X-Google-Smtp-Source: ABdhPJyThiqTmUR+mjwW5Rwt/w8IXod/JHqJmysd0ggSZZo7KZfVywHju29URLP5SZdgj8QnjtNn4w== X-Received: by 2002:a7b:ca50:: with SMTP id m16mr4659288wml.113.1616528542044; Tue, 23 Mar 2021 12:42:22 -0700 (PDT) Received: from pfiuh02.univ-paris-diderot.fr ([193.48.40.241]) by smtp.gmail.com with ESMTPSA id y1sm3398584wmq.29.2021.03.23.12.42.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 23 Mar 2021 12:42:21 -0700 (PDT) From: zimoun Date: Tue, 23 Mar 2021 20:42:11 +0100 Message-Id: <20210323194211.16398-1-zimon.toutoune@gmail.com> X-Mailer: git-send-email 2.28.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=2a00:1450:4864:20::32f; envelope-from=zimon.toutoune@gmail.com; helo=mail-wm1-x32f.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1616528709; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=e3O0xm2+ckbYdC94b0F39TRrZq1N7MazxajVwaLZC9U=; b=SFq6WhUreGskdP+mYce+GPmhBKrizuPJVBdtqatSz69HRBCKdqfGMKl3LB4lAmjyRNPuRH uB6c+xzLOJFllHfmYd00KMgpRYYKf4IAlNN9aSzOCPym8B8oZ7XK8r/Y5/ECUOzIO6uV7H w5WII54QOI5wiahKUKCEhuAeEYG/ORiByP4bQ2CwxYX3x6XNfyTUXo25MdVWfFunch3I95 pD6C3AnFFuLFmF9zMG4JZAqLrLTsgsPqktjDjSpOPf0AKF4LPxsiVmhmj8N4YeIm1mF6US 9wPxtwT1sxigWaSiqUSNX3NDsjtr7En9YDNXsG4ecIn9nMqB+v+FENOSO4UhlA== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1616528709; a=rsa-sha256; cv=none; b=L4x80QA9vo7cV+6Kdhb2LDAA2QTLwWqhQAvdGTQ8yOalmEG80MrFXHZMfx0q3fuudiN+4n VSas6xg8NMCyEYiUj+VQLTaipcWSB3fu7qY+GOFytHbS1czxtmGmTjjVBGZkAax663Bg3b 1x0u3CQIgtOBgPf4GyFOVai/ToH/sXloeE6LDIOsKmJVGmq8GqBo7ls/cl+CkI0ispf4KS jXzTXEx42p18sqcyzol12O1u6c/xdNF5SV+TdcQZn1G3C7tjALW8oSnFBPRR0d7Gs2hTX2 lDBt6Ayqz4J2NO21+hYo1V3C1Wo75vEKRKGC0UcZakvb3X/qnxm3Ti50InDKTQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20161025 header.b="DXZr/tag"; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Spam-Score: 4.18 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20161025 header.b="DXZr/tag"; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Queue-Id: A539C1A94F X-Spam-Score: 4.18 X-Migadu-Scanner: scn0.migadu.com X-TUID: T9AcJN0ETkxZ Hi, This adds all the packages required to build Zygote, the source-to-source automatic differentiation in Julia. It is the first brick to have Flux, the Julia machine learning framework. Noting that (at least 3) large pieces are still missing: Juno, Documenter and CUDA. Speaking about the Julia package CUDA, it is required by the test suite of Zygote, that's why the #:tests? is #f. However, we manually check the package by running the small examples, e.g., --8<---------------cut here---------------start------------->8--- $ ./pre-inst-env guix environment -C --ad-hoc julia julia-zygote -- julia julia> using Zygote [ Info: Precompiling Zygote [e88e6eb3-aa80-5325-afca-941959d7151f] julia> f(x) = 5x + 3 f (generic function with 1 method) julia> f(10), f'(10) (53, 5) julia> @code_llvm f'(10) ; @ /gnu/store/5m6676w77bbz44prbfxhxmk88srgxy81-profile/share/julia/packages/Zygote/src/compiler/interface.jl:62 within `#43' define i64 @"julia_#43_2036"(i64) { top: ret i64 5 } julia> W, b = rand(2, 3), rand(2); julia> predict(x) = W*x .+ b; julia> g = gradient(Params([W, b])) do sum(predict([1,2,3])) end Grads(...) julia> g[W], g[b] ([1.0 2.0 3.0; 1.0 2.0 3.0], 2-element Fill{Float64}: entries equal to 1.0) --8<---------------cut here---------------end--------------->8--- All the packages are not archived because of the rate limit. They should be soon. --8<---------------cut here---------------start------------->8--- for n in $(git log -30 --format="%s" --reverse | cut -d'-' -f2 | sed 's/\.//'); do ./pre-inst-env guix lint -c archival julia-${n} ; done gnu/packages/julia-xyz.scm:397:7: julia-constructionbase@1.1.0: scheduled Software Heritage archival gnu/packages/julia-xyz.scm:817:5: julia-macrotools@0.5.6: scheduled Software Heritage archival gnu/packages/julia-xyz.scm:1040:5: julia-reexport@1.0.0: scheduled Software Heritage archival gnu/packages/julia-xyz.scm:723:5: julia-irtools@0.4.2: scheduled Software Heritage archival gnu/packages/julia-xyz.scm:283:5: julia-colortypes@0.10.12: scheduled Software Heritage archival gnu/packages/julia-xyz.scm:1059:5: julia-requires@1.1.3: scheduled Software Heritage archival gnu/packages/julia-xyz.scm:1085:5: julia-richardson@1.4.0: scheduled Software Heritage archival gnu/packages/julia-xyz.scm:552:5: julia-finitedifferences@0.12.2: Software Heritage rate limit reached; try again later gnu/packages/julia-xyz.scm:211:5: julia-chainrulestestutils@0.6.4: archival rate limit exceeded; try again later gnu/packages/julia-xyz.scm:528:5: julia-fillarrays@0.11.7: archival rate limit exceeded; try again later gnu/packages/julia-xyz.scm:309:5: julia-commonsubexpressions@0.3.0: archival rate limit exceeded; try again later gnu/packages/julia-xyz.scm:131:5: julia-calculus@0.5.1: archival rate limit exceeded; try again later gnu/packages/julia-xyz.scm:441:5: julia-diffresults@1.0.3: archival rate limit exceeded; try again later gnu/packages/julia-xyz.scm:488:5: julia-difftests@0.1.1: archival rate limit exceeded; try again later guix lint: error: julia-compilersupportlibraries: unknown package guix lint: error: julia-openspecfun: unknown package gnu/packages/julia-xyz.scm:1112:5: julia-specialfunctions@1.3.0: archival rate limit exceeded; try again later gnu/packages/julia-xyz.scm:155:5: julia-chainrules@0.7.54: archival rate limit exceeded; try again later gnu/packages/julia-xyz.scm:613:5: julia-forwarddiff@0.10.17: archival rate limit exceeded; try again later gnu/packages/julia-xyz.scm:1221:5: julia-zygoterules@0.2.1: archival rate limit exceeded; try again later gnu/packages/julia-xyz.scm:1243:5: julia-zygote@0.6.4: archival rate limit exceeded; try again later --8<---------------cut here---------------end--------------->8--- Last, well, I feel motivated to implement an (recursive) importer, even inaccurate, it will greatly help. All the best, simon zimoun (29): gnu: Add julia-constructionbase. gnu: Add julia-macrotools. gnu: Add julia-nanmath. gnu: Add julia-reexport. gnu: Add julia-irtools. gnu: Add julia-staticarrays. gnu: Add julia-unitful. gnu: Add julia-abstractffts. gnu: Add julia-colortypes. gnu: Add julia-colors. gnu: Add julia-example. gnu: Add julia-requires. gnu: Add julia-chainrulescore. gnu: Add julia-richardson. gnu: Add julia-finitedifferences. gnu: Add julia-chainrulestestutils. gnu: Add julia-fillarrays. gnu: Add julia-commonsubexpressions. gnu: Add julia-calculus. gnu: Add julia-diffresults. gnu: Add julia-difftests. gnu: Add julia-compilersupportlibraries-jll. gnu: Add julia-openspecfun-jll. gnu: Add julia-specialfunctions. gnu: Add julia-diffrules. gnu: Add julia-chainrules. gnu: Add julia-forwarddiff. gnu: Add julia-zygoterules. gnu: Add julia-zygote. gnu/packages/julia-xyz.scm | 777 +++++++++++++++++++++++++++++++++++++ 1 file changed, 777 insertions(+) base-commit: a2f3a456bec357394fe550d927c26bbbdaa7ba6e -- 2.28.0