Hello Micheal,
Thanks for working on this.
BR,
Armin
On 9/23/23 3:52 PM, Michael Halstead wrote:
When adding https://cdn.jsdelivr.net/yocto/sstate/all
<https://cdn.jsdelivr.net/yocto/sstate/all> please remove any
reference to sstate.yoctoproject.org <http://sstate.yoctoproject.org>
from SSTATE_MIRRORS to ensure a proper test.
Thank you
On Sat, Sep 23, 2023 at 12:51 PM Michael Halstead
<mhalst...@linuxfoundation.org> wrote:
After some workshopping this morning we have a solution for larger
files. Almost every package is now available with CDN
acceleration. For files over 64MB the fetcher will need to follow
a series of redirects to work properly. Files under 64MB will be
served fast from every region. Larger files will be proxyed and
cached on a smaller network of servers that can handle them. Once
cached they will be stored for up to a month. Because sstate is
immutable that means fast access after the first use in a region.
Set SSTATE_MIRRORS
<https://docs.yoctoproject.org/ref-manual/variables.html#term-SSTATE_MIRRORS>
to include https://cdn.jsdelivr.net/yocto/sstate/all or
http://cdn.jsdelivr.net/yocto/sstate/all, test it out, and report
back.
If we want the system to perform as fast as possible we need to
change SSTATE to work with 64MB file segments but that's a
discussion to have after this solution is tested.
On Fri, Sep 22, 2023 at 12:03 PM Michael Halstead
<mhalst...@linuxfoundation.org> wrote:
Here are packages and size ranges that are not yet served via
CDN. Hopefully testing on the smaller files is possible while
we figure out a solution for these.
assimp 75M 76M
binutils 64M 100M
boost 68M 148M
ceres-solver 167M 182M
cmake 157M 553M
ffmpeg 68M 69M
gcc 127M 681M
gcc-cross-aarch64 64M 102M
gcc-cross-arm 64M 72M
gcc-cross-i686 65M 80M
gcc-cross-mips 65M 69M
gcc-cross-mips64 64M 69M
gcc-cross-powerpc 64M 72M
gcc-cross-x86_64 65M 104M
gcc-crosssdk-aarch64-pokysdk-linux 65M 75M
gcc-crosssdk-i686-oesdk-linux 65M 77M
gcc-crosssdk-i686-pokysdk-linux 65M 79M
gcc-crosssdk-i686-w64-mingw32 66M 78M
gcc-crosssdk-x86_64-oesdk-linux 65M 78M
gcc-crosssdk-x86_64-pokysdk-linux 65M 80M
gcc-crosssdk-x86_64-w64-mingw32 67M 79M
gdb 66M 105M
ghostscript 64M 115M
git 68M 90M
glibc-locale 81M 228M
go 67M 67M
go-binary-native 82M 82M
go-cross-core2-32 98M 100M
go-cross-core2-64 93M 100M
go-cross-corei7-64 98M 99M
go-cross-cortexa15t2hf-neon 99M 99M
go-cross-cortexa57 93M 99M
go-cross-cortexa8hf-neon 99M 100M
go-cross-mips32r2 98M 99M
go-cross-mips64 99M 99M
go-cross-mips64r2 99M 99M
go-native 86M 86M
go-runtime 64M 82M
grpc 74M 102M
hdf5 78M 137M
influxdb 76M 98M
intel-media-driver 68M 132M
jemalloc 164M 164M
kea 65M 153M
lib32-binutils 64M 70M
lib32-boost 77M 122M
lib32-cmake 158M 305M
lib32-gcc 144M 390M
lib32-gcc-cross-i686 65M 79M
lib32-gcc-cross-mips 65M 69M
lib32-ghostscript 65M 83M
lib32-git 65M 65M
lib32-glibc-locale 81M 228M
lib32-go-cross-x86 98M 99M
lib32-kea 64M 88M
lib32-linux-firmware 275M 419M
lib32-llvm 1126.4M 2662.4M
lib32-ltp 77M 305M
lib32-mesa 65M 68M
lib32-openssl 119M 360M
lib32-piglit 106M 106M
lib32-qemu 275M 639M
lib32-rust 93M 129M
lib32-rust-llvm 64M 76M
lib32-spirv-tools 68M 107M
lib32-valgrind 68M 89M
lib32-vulkan-demos 74M 74M
lib32-vulkan-validation-layers 65M 101M
lib32-webkitgtk 1126.4M 927M
lib64-boost 75M 119M
lib64-gcc 151M 401M
lib64-gcc-cross-mips64 65M 69M
lib64-gcc-cross-x86_64 65M 80M
lib64-glibc-locale 82M 228M
lib64-go-cross-x86_64 98M 99M
lib64-go-runtime 68M 81M
lib64-ltp 67M 347M
lib64-mesa 66M 68M
lib64-openssl 276M 411M
lib64-rust 97M 123M
lib64-rust-llvm 64M 67M
lib64-valgrind 65M 84M
libyang 93M 93M
linux-firmware 275M 419M
linux-intel 120M 395M
linux-yocto 66M 537M
linux-yocto-rt 174M 287M
llvm 1126.4M 3481.6M
llvm-native 71M 88M
ltp 64M 598M
mariadb 1331.2M 966M
mariadb-native 237M 259M
mesa 64M 113M
minifi-cpp 155M 214M
mozjs-102 183M 255M
nativesdk-glibc-locale 81M 226M
nativesdk-qemu 245M 644M
nativesdk-rust 82M 125M
nativesdk-rust-llvm 65M 73M
nodejs 1024.0M 723M
opencv 185M 237M
opengl-es-cts 406M 560M
openssl 92M 685M
php 67M 68M
piglit 106M 106M
poco 75M 107M
python3-grpcio 65M 88M
python3-wxgtk4 70M 100M
qemu 1228.8M 929M
qemu-system-native 65M 71M
renderdoc 67M 82M
rocksdb 177M 272M
rust 85M 140M
rust-llvm 64M 79M
rust-llvm-native 287M 418M
rust-native 78M 85M
spirv-tools 64M 195M
systemd 69M 71M
tesseract-lang 369M 451M
upm 82M 82M
valgrind 64M 128M
vsomeip 82M 149M
vulkan-cts 592M 833M
vulkan-demos 73M 138M
vulkan-validation-layers 65M 108M
webkitgtk 1024.0M 995M
webkitgtk3 1126.4M 1638.4M
wireshark 65M 85M
wxwidgets 70M 88M
On Fri, Sep 22, 2023 at 10:32 AM Michael Halstead
<mhalst...@linuxfoundation.org> wrote:
Right now we have https://cdn.jsdelivr.net/yocto/sstate
set up as a CDN mirroring proxy endpoint. It's fast and
completely free to the project. However, it will only work
for files smaller than 64MB and will send a redirect to
the main server at sstate.yoctoproject.org
<http://sstate.yoctoproject.org> for files larger than 64MB.
The good news is that we have a fast free CDN provided by
https://www.jsdelivr.com/ and their many sponsors for
99.4% of our files.
Here is an estimated distribution of sstate files
currently available:
1 KB-4 KB: 103168
4 KB-16 KB: 1218048
16 KB-64 KB: 1886976
64 KB-256 KB: 1225216
256 KB-1 MB: 170752
1 MB-4 MB: 92928
4 MB-16 MB: 83200
16 MB-64 MB: 40448
64 MB-256 MB: 17664
256 MB-1 GB: 7936
1 GB-4 GB: 2560
I'm still working on a CDN solution for the larger files
but we can begin testing
https://cdn.jsdelivr.net/yocto/sstate today.
Here is an example link to a file that is currently
popular from each location:
http://sstate.yoctoproject.org/all/universal/c6/81/sstate:re2c-native:x86_64-linux:3.1:r0:x86_64:11:c681f19e2786732c7920860d0b27cdcf3a79c9441d9bdaa82319a12e96e6246e_deploy_source_date_epoch.tar.zst
https://cdn.jsdelivr.net/yocto/sstate/all/universal/c6/81/sstate:re2c-native:x86_64-linux:3.1:r0:x86_64:11:c681f19e2786732c7920860d0b27cdcf3a79c9441d9bdaa82319a12e96e6246e_deploy_source_date_epoch.tar.zst
I'm also attaching a list of the largest files in sstate.
Anything we can do to reduce the size of these or to split
them into smaller pieces will help with hosting and with
the user's download experience.
--
Michael Halstead
Linux Foundation / Yocto Project
Systems Operations Engineer
--
Michael Halstead
Linux Foundation / Yocto Project
Systems Operations Engineer
--
Michael Halstead
Linux Foundation / Yocto Project
Systems Operations Engineer
--
Michael Halstead
Linux Foundation / Yocto Project
Systems Operations Engineer
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#61091): https://lists.yoctoproject.org/g/yocto/message/61091
Mute This Topic: https://lists.yoctoproject.org/mt/101525879/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-