⇧ パフォーマンスの向上がエグいっすな...
ハードウェアでは、
Annapurna Labsは、半導体を開発する企業で、AWSのシリコン設計・製造を担当している企業です。AWSには独自のカスタムチップとアクセラレータのファミリーがあり、新しい世代が出るたびに以前のものをベースとして改良が加えられていますが、これらのチップの設計・製造はAnnapurna Labsが担っており、テキサス州オースティンにあるラボのほか、イスラエルのテルアビブ、カナダのトロントなど複数の拠点で業務を担当しているそうです。
AmazonがNVIDIAへの依存を減らすため独自AIチップを開発させている「Annapurna Labs」とは? - GIGAZINE
⇧ Amazonが脱NVIDIAに向けて開発に取り組んでいるそうな。
Linuxのデフォルトでcurlはインストールされていないが、Pythonはインストールされているとは言えど...
Dockerコンテナなどのベースイメージで、何某かのLinux ディストリビューションを選択することがあるあるだと思うのですが、職場の方から
『curlが無ければ、Pythonで実装したら良いじゃない』
という目から鱗の助言をいただき、昨今のLinux ディストリビューションにおいては、デフォルトで「Python」がインストールされているのだなぁ、と思うなどした。
ちなみに、
「ケーキを食べればいいじゃない」とは、フランス語の語句 Qu'ils mangent de la brioche !(「ブリオッシュを食べればいいじゃない」の意)を踏まえた英語の慣用句 Let them eat cake を日本語に訳したもので、農民が主食として食べるパンに事欠いていることを知った「あるたいへんに身分の高い女性」(une grande princesse) が言ったとされる台詞である。
一般には、その女性はマリー・アントワネットとされるが、実際にはこれはアントワネット自身の言葉ではないことが判明している。
⇧ かの有名な言葉は、まさかの「マリー・アントワネット」の言葉じゃない説。
話が脱線しましたが、主要なLinux ディストリビューションにおけるデフォルトでインストールされているであろう「Python」について、ChatGPTに質問してみた。
No | ディストリビューション | デフォルトでインストールされているPythonバージョン | 備考 |
---|---|---|---|
1 | Ubuntu 22.04 LTS (Jammy) | Python 3.10 | LTS版のため長期間サポートされるバージョン |
2 | Ubuntu 23.04 (Lunar) | Python 3.11 | 最新の安定版リリース |
3 | Debian 11 (Bullseye) | Python 3.9 | 安定版、長期サポート |
4 | Debian 12 (Bookworm) | Python 3.10 | 新しい安定版リリース |
5 | CentOS 8 | Python 3.6 | 古いリリース、Python 2.xは非推奨 |
6 | Rocky Linux 8 | Python 3.6 | CentOSの代替として普及 |
7 | Fedora 38 | Python 3.11 | 最新の安定版リリース、常に新しいパッケージ |
8 | Arch Linux | Python 3.11 | ローリングリリースで常に最新 |
9 | OpenSUSE Leap 15.4 | Python 3.6 | 安定版、古いバージョンを使うことが多い |
10 | OpenSUSE Tumbleweed | Python 3.11 | ローリングリリース、常に最新 |
⇧ 上記のような回答が返ってきた。
「WSL 2(Windows Subsystem for Linux 2)」にインストールしていた「Rocky Linux 9」系で確認してみた。
dnf list --installed
■「dnf list --installed」の実行結果
[root@Toshinobu-PC ~]# dnf list --installed Installed Packages acl.x86_64 2.3.1-4.el9 @baseos alternatives.x86_64 1.24-1.el9 @System audit-libs.x86_64 3.1.2-2.el9 @baseos basesystem.noarch 11-13.el9.0.1 @baseos bash.x86_64 5.1.8-9.el9 @baseos bind-libs.x86_64 32:9.16.23-18.el9_4.1 @appstream bind-license.noarch 32:9.16.23-18.el9_4.1 @appstream bind-utils.x86_64 32:9.16.23-18.el9_4.1 @appstream binutils.x86_64 2.35.2-43.el9 @baseos binutils-gold.x86_64 2.35.2-43.el9 @baseos bzip2-libs.x86_64 1.0.8-8.el9 @System ca-certificates.noarch 2023.2.60_v7.0.306-90.1.el9_2 @System checkpolicy.x86_64 3.6-1.el9 @appstream container-selinux.noarch 3:2.229.0-1.el9 @appstream containerd.io.x86_64 1.7.19-3.1.el9 @docker-ce-stable coreutils-single.x86_64 8.32-35.el9 @baseos cracklib.x86_64 2.9.6-27.el9 @System cracklib-dicts.x86_64 2.9.6-27.el9 @System crypto-policies.noarch 20240202-1.git283706d.el9 @baseos crypto-policies-scripts.noarch 20240202-1.git283706d.el9 @baseos curl-minimal.x86_64 7.76.1-29.el9_4 @baseos cyrus-sasl-lib.x86_64 2.1.27-21.el9 @System dbus.x86_64 1:1.12.20-8.el9 @baseos dbus-broker.x86_64 28-7.el9 @baseos dbus-common.noarch 1:1.12.20-8.el9 @baseos dbus-libs.x86_64 1:1.12.20-8.el9 @baseos device-mapper.x86_64 9:1.02.197-2.el9 @baseos device-mapper-libs.x86_64 9:1.02.197-2.el9 @baseos diffutils.x86_64 3.7-12.el9 @baseos dnf.noarch 4.14.0-9.el9 @baseos dnf-data.noarch 4.14.0-9.el9 @baseos dnf-plugins-core.noarch 4.3.0-13.el9 @baseos docker-buildx-plugin.x86_64 0.16.1-1.el9 @docker-ce-stable docker-ce.x86_64 3:27.1.1-1.el9 @docker-ce-stable docker-ce-cli.x86_64 1:27.1.1-1.el9 @docker-ce-stable docker-ce-rootless-extras.x86_64 27.1.1-1.el9 @docker-ce-stable docker-compose-plugin.x86_64 2.29.1-1.el9 @docker-ce-stable elfutils-debuginfod-client.x86_64 0.190-2.el9 @baseos elfutils-default-yama-scope.noarch 0.190-2.el9 @baseos elfutils-libelf.x86_64 0.190-2.el9 @baseos elfutils-libs.x86_64 0.190-2.el9 @baseos emacs-filesystem.noarch 1:27.2-10.el9_4 @appstream expat.x86_64 2.5.0-2.el9_4 @baseos file-libs.x86_64 5.39-16.el9 @baseos filesystem.x86_64 3.16-2.el9 @System findutils.x86_64 1:4.8.0-6.el9 @System fstrm.x86_64 0.6.1-3.el9 @appstream fuse-common.x86_64 3.10.2-8.el9 @baseos fuse-overlayfs.x86_64 1.13-1.el9 @appstream fuse3.x86_64 3.10.2-8.el9 @appstream fuse3-libs.x86_64 3.10.2-8.el9 @appstream gawk.x86_64 5.1.0-6.el9 @System gdbm-libs.x86_64 1:1.19-4.el9 @System git.x86_64 2.43.5-1.el9_4 @appstream git-core.x86_64 2.43.5-1.el9_4 @appstream git-core-doc.noarch 2.43.5-1.el9_4 @appstream glib2.x86_64 2.68.4-14.el9 @baseos glibc.x86_64 2.34-100.el9_4.2 @baseos glibc-common.x86_64 2.34-100.el9_4.2 @baseos glibc-minimal-langpack.x86_64 2.34-100.el9_4.2 @baseos gmp.x86_64 1:6.2.0-13.el9 @System gnupg2.x86_64 2.3.3-4.el9 @System gnutls.x86_64 3.8.3-4.el9_4 @baseos gpgme.x86_64 1.15.1-6.el9 @System grep.x86_64 3.6-5.el9 @System groff-base.x86_64 1.22.4-10.el9 @baseos gzip.x86_64 1.12-1.el9 @System hostname.x86_64 3.23-6.el9 @System ima-evm-utils.x86_64 1.4-4.el9 @System iproute.x86_64 6.2.0-6.el9_4 @baseos iptables-libs.x86_64 1.8.10-2.el9 @baseos iptables-nft.x86_64 1.8.10-2.el9 @baseos iputils.x86_64 20210202-9.el9 @baseos json-c.x86_64 0.14-11.el9 @System keyutils-libs.x86_64 1.6.3-1.el9 @System kmod.x86_64 28-9.el9 @baseos kmod-libs.x86_64 28-9.el9 @baseos krb5-libs.x86_64 1.21.1-1.el9 @System less.x86_64 590-4.el9_4 @baseos libacl.x86_64 2.3.1-4.el9 @baseos libarchive.x86_64 3.5.3-4.el9.0.1 @baseos libassuan.x86_64 2.5.5-3.el9 @System libattr.x86_64 2.5.1-3.el9 @System libblkid.x86_64 2.37.4-18.el9 @baseos libbpf.x86_64 2:1.3.0-2.el9 @baseos libcap.x86_64 2.48-9.el9_2 @System libcap-ng.x86_64 0.8.2-7.el9 @System libcbor.x86_64 0.7.0-5.el9 @baseos libcom_err.x86_64 1.46.5-5.el9 @baseos libcomps.x86_64 0.1.18-1.el9 @System libcurl-minimal.x86_64 7.76.1-29.el9_4 @baseos libdb.x86_64 5.3.28-53.el9 @System libdnf.x86_64 0.69.0-8.el9 @baseos libeconf.x86_64 0.4.1-3.el9_2 @System libedit.x86_64 3.1-38.20210216cvs.el9 @baseos libevent.x86_64 2.1.12-6.el9 @System libfdisk.x86_64 2.37.4-18.el9 @baseos libffi.x86_64 3.4.2-8.el9 @System libfido2.x86_64 1.13.0-2.el9 @baseos libgcc.x86_64 11.4.1-3.el9 @baseos libgcrypt.x86_64 1.10.0-10.el9_2 @System libgomp.x86_64 11.4.1-3.el9 @baseos libgpg-error.x86_64 1.42-5.el9 @System libibverbs.x86_64 48.0-1.el9 @baseos libicu.x86_64 67.1-9.el9 @baseos libidn2.x86_64 2.3.0-7.el9 @System libksba.x86_64 1.5.1-6.el9_1 @System libmaxminddb.x86_64 1.5.2-3.el9 @appstream libmnl.x86_64 1.0.4-15.el9 @baseos libmodulemd.x86_64 2.13.0-2.el9 @System libmount.x86_64 2.37.4-18.el9 @baseos libnetfilter_conntrack.x86_64 1.0.9-1.el9 @baseos libnfnetlink.x86_64 1.0.1-21.el9 @baseos libnftnl.x86_64 1.2.6-2.el9 @baseos libnghttp2.x86_64 1.43.0-5.el9_4.3 @baseos libnl3.x86_64 3.9.0-1.el9 @baseos libpcap.x86_64 14:1.10.0-4.el9 @baseos libpwquality.x86_64 1.4.4-8.el9 @System librepo.x86_64 1.14.5-2.el9 @baseos libreport-filesystem.noarch 2.15.2-6.el9.rocky.0.2 @System libseccomp.x86_64 2.5.2-2.el9 @baseos libselinux.x86_64 3.6-1.el9 @baseos libselinux-utils.x86_64 3.6-1.el9 @baseos libsemanage.x86_64 3.6-1.el9 @baseos libsepol.x86_64 3.6-1.el9 @baseos libsigsegv.x86_64 2.13-4.el9 @System libslirp.x86_64 4.4.0-7.el9 @appstream libsmartcols.x86_64 2.37.4-18.el9 @baseos libsolv.x86_64 0.7.24-2.el9 @System libstdc++.x86_64 11.4.1-3.el9 @baseos libtasn1.x86_64 4.16.0-8.el9_1 @System libunistring.x86_64 0.9.10-15.el9 @System libusbx.x86_64 1.0.26-1.el9 @System libuser.x86_64 0.63-13.el9 @System libutempter.x86_64 1.2.1-6.el9 @System libuuid.x86_64 2.37.4-18.el9 @baseos libuv.x86_64 1:1.42.0-2.el9_4 @appstream libverto.x86_64 0.3.2-3.el9 @System libxcrypt.x86_64 4.4.18-3.el9 @System libxcrypt-compat.x86_64 4.4.18-3.el9 @appstream libxml2.x86_64 2.9.13-6.el9_4 @baseos libxslt.x86_64 1.1.34-9.el9 @appstream libyaml.x86_64 0.2.5-7.el9 @System libzstd.x86_64 1.5.1-2.el9 @System lmdb-libs.x86_64 0.9.29-3.el9 @baseos logrotate.x86_64 3.18.0-8.el9 @baseos lua-libs.x86_64 5.4.4-4.el9 @System lz4.x86_64 1.9.3-5.el9 @baseos lz4-libs.x86_64 1.9.3-5.el9 @System mpfr.x86_64 4.1.0-7.el9 @System ncurses.x86_64 6.2-10.20210508.el9 @baseos ncurses-base.noarch 6.2-10.20210508.el9 @System ncurses-libs.x86_64 6.2-10.20210508.el9 @System nettle.x86_64 3.9.1-1.el9 @baseos npth.x86_64 1.6-8.el9 @System openldap.x86_64 2.6.6-3.el9 @baseos openssh.x86_64 8.7p1-38.el9_4.4 @baseos openssh-clients.x86_64 8.7p1-38.el9_4.4 @baseos openssh-server.x86_64 8.7p1-38.el9_4.4 @baseos openssl.x86_64 1:3.0.7-27.el9.0.2 @baseos openssl-libs.x86_64 1:3.0.7-27.el9.0.2 @baseos p11-kit.x86_64 0.25.3-2.el9 @baseos p11-kit-trust.x86_64 0.25.3-2.el9 @baseos pam.x86_64 1.5.1-19.el9 @baseos passwd.x86_64 0.80-12.el9 @System pcre.x86_64 8.44-3.el9.3 @System pcre2.x86_64 10.40-5.el9 @baseos pcre2-syntax.noarch 10.40-5.el9 @baseos perl-AutoLoader.noarch 5.74-481.el9 @appstream perl-B.x86_64 1.80-481.el9 @appstream perl-Carp.noarch 1.50-460.el9 @appstream perl-Class-Struct.noarch 0.66-481.el9 @appstream perl-Data-Dumper.x86_64 2.174-462.el9 @appstream perl-Digest.noarch 1.19-4.el9 @appstream perl-Digest-MD5.x86_64 2.58-4.el9 @appstream perl-DynaLoader.x86_64 1.47-481.el9 @appstream perl-Encode.x86_64 4:3.08-462.el9 @appstream perl-Errno.x86_64 1.30-481.el9 @appstream perl-Error.noarch 1:0.17029-7.el9 @appstream perl-Exporter.noarch 5.74-461.el9 @appstream perl-Fcntl.x86_64 1.13-481.el9 @appstream perl-File-Basename.noarch 2.85-481.el9 @appstream perl-File-Find.noarch 1.37-481.el9 @appstream perl-File-Path.noarch 2.18-4.el9 @appstream perl-File-Temp.noarch 1:0.231.100-4.el9 @appstream perl-File-stat.noarch 1.09-481.el9 @appstream perl-FileHandle.noarch 2.03-481.el9 @appstream perl-Getopt-Long.noarch 1:2.52-4.el9 @appstream perl-Getopt-Std.noarch 1.12-481.el9 @appstream perl-Git.noarch 2.43.5-1.el9_4 @appstream perl-HTTP-Tiny.noarch 0.076-462.el9 @appstream perl-IO.x86_64 1.43-481.el9 @appstream perl-IO-Socket-IP.noarch 0.41-5.el9 @appstream perl-IO-Socket-SSL.noarch 2.073-1.el9 @appstream perl-IPC-Open3.noarch 1.21-481.el9 @appstream perl-MIME-Base64.x86_64 3.16-4.el9 @appstream perl-Mozilla-CA.noarch 20200520-6.el9 @appstream perl-NDBM_File.x86_64 1.15-481.el9 @appstream perl-Net-SSLeay.x86_64 1.92-2.el9 @appstream perl-POSIX.x86_64 1.94-481.el9 @appstream perl-PathTools.x86_64 3.78-461.el9 @appstream perl-Pod-Escapes.noarch 1:1.07-460.el9 @appstream perl-Pod-Perldoc.noarch 3.28.01-461.el9 @appstream perl-Pod-Simple.noarch 1:3.42-4.el9 @appstream perl-Pod-Usage.noarch 4:2.01-4.el9 @appstream perl-Scalar-List-Utils.x86_64 4:1.56-461.el9 @appstream perl-SelectSaver.noarch 1.02-481.el9 @appstream perl-Socket.x86_64 4:2.031-4.el9 @appstream perl-Storable.x86_64 1:3.21-460.el9 @appstream perl-Symbol.noarch 1.08-481.el9 @appstream perl-Term-ANSIColor.noarch 5.01-461.el9 @appstream perl-Term-Cap.noarch 1.17-460.el9 @appstream perl-TermReadKey.x86_64 2.38-11.el9 @appstream perl-Text-ParseWords.noarch 3.30-460.el9 @appstream perl-Text-Tabs+Wrap.noarch 2013.0523-460.el9 @appstream perl-Time-Local.noarch 2:1.300-7.el9 @appstream perl-URI.noarch 5.09-3.el9 @appstream perl-base.noarch 2.27-481.el9 @appstream perl-constant.noarch 1.33-461.el9 @appstream perl-if.noarch 0.60.800-481.el9 @appstream perl-interpreter.x86_64 4:5.32.1-481.el9 @appstream perl-lib.x86_64 0.65-481.el9 @appstream perl-libnet.noarch 3.13-4.el9 @appstream perl-libs.x86_64 4:5.32.1-481.el9 @appstream perl-mro.x86_64 1.23-481.el9 @appstream perl-overload.noarch 1.31-481.el9 @appstream perl-overloading.noarch 0.02-481.el9 @appstream perl-parent.noarch 1:0.238-460.el9 @appstream perl-podlators.noarch 1:4.14-460.el9 @appstream perl-subs.noarch 1.03-481.el9 @appstream perl-vars.noarch 1.05-481.el9 @appstream pgdg-redhat-repo.noarch 42.0-43PGDG @@commandline policycoreutils.x86_64 3.6-2.1.el9 @baseos policycoreutils-python-utils.noarch 3.6-2.1.el9 @appstream popt.x86_64 1.18-8.el9 @System postgresql14.x86_64 14.12-1PGDG.rhel9 @pgdg14 postgresql14-libs.x86_64 14.12-1PGDG.rhel9 @pgdg14 postgresql14-server.x86_64 14.12-1PGDG.rhel9 @pgdg14 postgresql15.x86_64 15.8-1PGDG.rhel9 @pgdg15 postgresql15-contrib.x86_64 15.8-1PGDG.rhel9 @pgdg15 postgresql15-libs.x86_64 15.8-1PGDG.rhel9 @pgdg15 postgresql15-server.x86_64 15.8-1PGDG.rhel9 @pgdg15 procps-ng.x86_64 3.3.17-14.el9 @baseos protobuf-c.x86_64 1.3.3-13.el9 @baseos psmisc.x86_64 23.4-3.el9 @baseos python3.x86_64 3.9.18-3.el9_4.3 @baseos python3-audit.x86_64 3.1.2-2.el9 @appstream python3-dateutil.noarch 1:2.8.1-7.el9 @baseos python3-dbus.x86_64 1.2.18-2.el9.0.1 @baseos python3-distro.noarch 1.5.0-7.el9 @appstream python3-dnf.noarch 4.14.0-9.el9 @baseos python3-dnf-plugins-core.noarch 4.3.0-13.el9 @baseos python3-gpg.x86_64 1.15.1-6.el9 @System python3-hawkey.x86_64 0.69.0-8.el9 @baseos python3-libcomps.x86_64 0.1.18-1.el9 @System python3-libdnf.x86_64 0.69.0-8.el9 @baseos python3-libs.x86_64 3.9.18-3.el9_4.3 @baseos python3-libselinux.x86_64 3.6-1.el9 @appstream python3-libsemanage.x86_64 3.6-1.el9 @appstream python3-pip-wheel.noarch 21.2.3-8.el9 @baseos python3-policycoreutils.noarch 3.6-2.1.el9 @appstream python3-rpm.x86_64 4.16.1.3-29.el9 @baseos python3-setools.x86_64 4.4.4-1.el9 @baseos python3-setuptools.noarch 53.0.0-12.el9 @baseos python3-setuptools-wheel.noarch 53.0.0-12.el9 @System python3-six.noarch 1.15.0-9.el9 @baseos python3-systemd.x86_64 234-18.el9 @baseos readline.x86_64 8.1-4.el9 @System rocky-gpg-keys.noarch 9.4-1.7.el9 @baseos rocky-release.noarch 9.4-1.7.el9 @baseos rocky-repos.noarch 9.4-1.7.el9 @baseos rootfiles.noarch 8.1-31.el9 @System rpm.x86_64 4.16.1.3-29.el9 @baseos rpm-build-libs.x86_64 4.16.1.3-29.el9 @baseos rpm-libs.x86_64 4.16.1.3-29.el9 @baseos rpm-plugin-selinux.x86_64 4.16.1.3-29.el9 @baseos rpm-plugin-systemd-inhibit.x86_64 4.16.1.3-29.el9 @appstream rpm-sign-libs.x86_64 4.16.1.3-29.el9 @baseos sed.x86_64 4.8-9.el9 @System selinux-policy.noarch 38.1.35-2.el9_4.2.0.2 @baseos selinux-policy-targeted.noarch 38.1.35-2.el9_4.2.0.2 @baseos setup.noarch 2.13.7-10.el9 @baseos shadow-utils.x86_64 2:4.9-8.el9 @System slirp4netns.x86_64 1.2.3-1.el9 @appstream sqlite-libs.x86_64 3.34.1-7.el9_3 @baseos sudo.x86_64 1.9.5p2-10.el9_3 @baseos systemd.x86_64 252-32.el9_4.6 @baseos systemd-libs.x86_64 252-32.el9_4.6 @baseos systemd-pam.x86_64 252-32.el9_4.6 @baseos systemd-rpm-macros.noarch 252-32.el9_4.6 @baseos tar.x86_64 2:1.34-6.el9_1 @System timescaledb-2-loader-postgresql-15.x86_64 2.16.1-0.el9 @timescale_timescaledb timescaledb-2-postgresql-15.x86_64 2.16.1-0.el9 @timescale_timescaledb timescaledb-tools.x86_64 0.15.0-0.el9 @timescale_timescaledb tpm2-tss.x86_64 3.2.2-2.el9 @System tzdata.noarch 2024a-1.el9 @baseos usermode.x86_64 1.114-4.el9 @System util-linux.x86_64 2.37.4-18.el9 @baseos util-linux-core.x86_64 2.37.4-18.el9 @baseos vim-minimal.x86_64 2:8.2.2637-20.el9_1 @System xz.x86_64 5.2.5-8.el9_0 @baseos xz-libs.x86_64 5.2.5-8.el9_0 @System yum.noarch 4.14.0-9.el9 @baseos zlib.x86_64 1.2.11-40.el9 @System
⇧ とりあえず、バージョン3.9.18ということになるんかね?
なるほど、バージョン3.9.18がデフォルトでインストールされてるPythonってことで良いんかね?
一応、
⇧ Python標準のライブラリで、HTTP Clientが用意されているらしいので、
- HTTP GET
- HTTP POST
とか、REST APIを利用するための実装は行えそう。
とは言え、PythonでREST APIを利用するコーディングの王道的な実装が分からんので、調べる必要がありますな。
Pythonの標準ライブラリ以外が必要になるとすると、結局、curlをインストールするのと変わらない感じになってきてしまうし...
stackoverflowによると、
⇧ 別の場所でインストール済みのライブラリを、tarに圧縮しておいて、tarで導入する方法が紹介されていますが、最悪、そんな方法で導入も検討する感じになるのかね。
毎度モヤモヤ感が半端ない…
今回はこのへんで。