SlideShare ist ein Scribd-Unternehmen logo
1 von 24
Downloaden Sie, um offline zu lesen
How to fight with
“bloated repository”




           Hideki Yamane
       (Debian Project:Debian Developer)
   <henrich @ debian.org/or.jp>
     http://wiki.debian.org/HidekiYamane
Today's Agenda
● How large Debian Repository is
● One day, I found a solution...


● Is it really effective?


● Problem on slower Arch


● How shrink
Debian supports...


Many many packages
Many CPU architectures
Some kernels
How large Debian Repository is?


Arch: source, all, amd64, armel, armhf, hurd-
i386, i386, ia64, kfreebsd-amd64, kfree-bsd-
i386, mips, mipsel, powerpc, s390, s390x, sparc
How large Debian Repository is?


Arch: source 52GB, all 57GB, amd64 53GB, armel
38GB, armhf 26GB, hurd-i386 14GB, i386 50GB,
ia64 42GB, kfreebsd-amd64 37GB, kfreebsd-i386
36GB, mips 35GB, mipsel 34GB, powerpc 42GB, s390
36GB, s390x 24GB, sparc 39GB...



Total?
                            (http://www.debian.org/mirror/size)
How large Debian Repository is?


Arch: source 52GB, all 57GB, amd64 53GB, armel
38GB, armhf 26GB, hurd-i386 14GB, i386 50GB,
ia64 42GB, kfreebsd-amd64 37GB, kfreebsd-i386
36GB, mips 35GB, mipsel 34GB, powerpc 42GB, s390
36GB, s390x 24GB, sparc 39GB...



Total: 615GB!!
                            (http://www.debian.org/mirror/size)
How can we
improve this?
Can we shrink this?
         Yes, in some ways...




   Drop support architectures
 Delete packages from archive
Can we shrink this?
 However, we don't want such
                    solutions



   Drop support architectures
 Delete packages from archive
Use XZ!

Default compression is
         gzip
xz can reduce file size
Use XZ!
ex)
fonts-horai-umefont (I'm maintainer :-)

By gzip -9 : 43,664kb
By xz      : 25,476kb
Use XZ!
ex)
fonts-horai-umefont (I'm maintainer :-)

By gzip -9 : 43,664kb
By xz  -9 : 25,476kb
           → 5,916kb
WARNING!

The archive software now accepts packages using xz for compression in
addition to gzip and bzip2 for both source and binary packages.
(snip)
Additionally please only use xz (or bzip2 for that matter) if your package
really profits from its usage (for example, it provides a significant space
saving). While those methods may compress better they often use more
CPU time to do so and a very small decrease in package size is hardly worth
the extra effort placed on slower systems. Think of both user systems and
the Debian buildds which will waste more time – an especially bad problem
on slower architectures.

                                  (“Thearchivenowsupportsxzcompression”byAnsgarBurchardt<ansgar@debian.org>
                                                 http://lists.debian.org/debian-devel-announce/2011/08/msg00001.html)
WARNING!

The archive software now accepts packages using xz for compression in
addition to gzip and bzip2 for both source and binary packages.
(snip)
Additionally please only use xz (or bzip2 for that matter) if your package
really profits from its usage (for example, it provides a significant space
saving). While those methods may compress better they often use more
CPU time to do so and a very small decrease in package size is hardly worth
the extra effort placed on slower systems. Think of both user systems and
the Debian buildds which will waste more time – an especially bad problem
on slower architectures.

                                  (“Thearchivenowsupportsxzcompression”byAnsgarBurchardt<ansgar@debian.org>
                                                 http://lists.debian.org/debian-devel-announce/2011/08/msg00001.html)
XZ on Slower arch is problem...


                        It'll eat
                most CPU time
XZ on Slower arch is problem...




                         Then...
      if only on Powerful arch?
XZ on Powerful arch is NOT problem




                      assumption:
use XZ on Intel/AMD arch by default
Before XZ...

           60
                57
                                   55
                           52
           50


                                                       42
           40                                                     39
                                                                                  37
size(GB)




           30




           20

                                           14

           10




           0
                     all    i386   amd64   hurd-i386    ia64   kfreebsd-amd64   kfreebsd-i386
After XZ!

           60
                57
                                          55
                                52
           50
                           45
                                                                42
           40                                                                39
                                                                                             37
                                               34
                                     32
                                                                                                           before
size(GB)




           30
                                                                                                           after xz
                                                                     24           24
                                                                                                   23

           20

                                                    14

                                                          10
           10




           0
                     all         i386     amd64     hurd-i386    ia64     kfreebsd-amd64   kfreebsd-i386
How shrink it is

350



300



250

                               kfreebsd-i386
                               kfreebsd-amd64
200
                               ia64
                               hurd-i386
                               amd64
150                            i386
                               all


100



50



 0
        before      after xz
How shrink it is

                                                              Reduction
  architecture     before        after xz      difference       Rate
all                         57           ???              ---         ---
i386                        52           ???              ---         ---
amd64                       55           ???              ---         ---
hurd-i386                   14           ???              ---         ---
ia64                        42           ???              ---         ---
kfreebsd-amd64              39           ???              ---         ---
kfreebsd-i386               37           ???              ---         ---
total                   296              ???              ---         ---
How shrink it is

                                                               Reduction
  architecture     before        after xz        difference      Rate
all                         57              45             -12      21%
i386                        52              32             -20      38%
amd64                       55              34             -21      38%
hurd-i386                   14              10              -4      29%
ia64                        42              24             -18      43%
kfreebsd-amd64              39              24             -15      38%
kfreebsd-i386               37              23             -14      38%
total                   296             192               -104      35%
Conclusion
●   How big Debian Repository is : 615GB
●   One day, I found a solution...   : use xz
●   Is it really effective?          : YES!
●   Problem on slower Arch           : x86 + all
●   How shrink                       : 100GB!

    So, recommend to apply XZ to all, *i386 and
    *amd64 by default (exclude Priority:require)
Also, Thanks to nice pictures
SpaceFun
●


    http://wiki.debian.org/DebianArt/Themes/SpaceFun
    By Valessio Brito
    licensed under GPL-2

Debian Theme (etch?)
●




Debian Theme (by @nogajun)
●




Thinking
●


    http://www.flickr.com/photos/nachoissd/3499105933/
    By Victor Pérez :: victorperezp.com
    licensed under Creative Commons Attribution 2.0 Generic (CC BY 2.0)

A successful tool is one that was used to do something undreamed of by its author.
●


    http://www.flickr.com/photos/katerha/5746905652/
    By katerha
    licensed under Creative Commons Attribution 2.0 Generic (CC BY 2.0)

Weitere ähnliche Inhalte

Ähnlich wie How to fight with "bloated repository"

GPGPU Computation
GPGPU ComputationGPGPU Computation
GPGPU Computationjtsagata
 
Accelerating HPC Applications on NVIDIA GPUs with OpenACC
Accelerating HPC Applications on NVIDIA GPUs with OpenACCAccelerating HPC Applications on NVIDIA GPUs with OpenACC
Accelerating HPC Applications on NVIDIA GPUs with OpenACCinside-BigData.com
 
An Introduction to CUDA-OpenCL - University.pptx
An Introduction to CUDA-OpenCL - University.pptxAn Introduction to CUDA-OpenCL - University.pptx
An Introduction to CUDA-OpenCL - University.pptxAnirudhGarg35
 
PostgreSQL na EXT4, XFS, BTRFS a ZFS / FOSDEM PgDay 2016
PostgreSQL na EXT4, XFS, BTRFS a ZFS / FOSDEM PgDay 2016PostgreSQL na EXT4, XFS, BTRFS a ZFS / FOSDEM PgDay 2016
PostgreSQL na EXT4, XFS, BTRFS a ZFS / FOSDEM PgDay 2016Tomas Vondra
 
Moldex3D, Structural Analysis, and HyperStudy Integrated in HyperWorks Platfo...
Moldex3D, Structural Analysis, and HyperStudy Integrated in HyperWorks Platfo...Moldex3D, Structural Analysis, and HyperStudy Integrated in HyperWorks Platfo...
Moldex3D, Structural Analysis, and HyperStudy Integrated in HyperWorks Platfo...Altair
 
Voltaire - Achieving Peak Performance with Advanced Fabric Management
Voltaire - Achieving Peak Performance with Advanced Fabric ManagementVoltaire - Achieving Peak Performance with Advanced Fabric Management
Voltaire - Achieving Peak Performance with Advanced Fabric ManagementVoltaire
 
쉐도우맵을 압축하여 대규모씬에 라이팅을 적용해보자
쉐도우맵을 압축하여 대규모씬에 라이팅을 적용해보자쉐도우맵을 압축하여 대규모씬에 라이팅을 적용해보자
쉐도우맵을 압축하여 대규모씬에 라이팅을 적용해보자Seongdae Kim
 
7nm "Navi" GPU - A GPU Built For Performance
7nm "Navi" GPU - A GPU Built For Performance 7nm "Navi" GPU - A GPU Built For Performance
7nm "Navi" GPU - A GPU Built For Performance AMD
 
3D V-Cache
3D V-Cache 3D V-Cache
3D V-Cache AMD
 
Precomputed Voxelized-Shadows for Large-scale Scene and Many lights
Precomputed Voxelized-Shadows for Large-scale Scene and Many lightsPrecomputed Voxelized-Shadows for Large-scale Scene and Many lights
Precomputed Voxelized-Shadows for Large-scale Scene and Many lightsSeongdae Kim
 
Apple earlier business plan
Apple earlier business planApple earlier business plan
Apple earlier business planWahida Wahap
 
The Technology behind Shadow Warrior, ZTG 2014
The Technology behind Shadow Warrior, ZTG 2014The Technology behind Shadow Warrior, ZTG 2014
The Technology behind Shadow Warrior, ZTG 2014Jarosław Pleskot
 

Ähnlich wie How to fight with "bloated repository" (14)

GPGPU Computation
GPGPU ComputationGPGPU Computation
GPGPU Computation
 
Accelerating HPC Applications on NVIDIA GPUs with OpenACC
Accelerating HPC Applications on NVIDIA GPUs with OpenACCAccelerating HPC Applications on NVIDIA GPUs with OpenACC
Accelerating HPC Applications on NVIDIA GPUs with OpenACC
 
An Introduction to CUDA-OpenCL - University.pptx
An Introduction to CUDA-OpenCL - University.pptxAn Introduction to CUDA-OpenCL - University.pptx
An Introduction to CUDA-OpenCL - University.pptx
 
PostgreSQL na EXT4, XFS, BTRFS a ZFS / FOSDEM PgDay 2016
PostgreSQL na EXT4, XFS, BTRFS a ZFS / FOSDEM PgDay 2016PostgreSQL na EXT4, XFS, BTRFS a ZFS / FOSDEM PgDay 2016
PostgreSQL na EXT4, XFS, BTRFS a ZFS / FOSDEM PgDay 2016
 
Moldex3D, Structural Analysis, and HyperStudy Integrated in HyperWorks Platfo...
Moldex3D, Structural Analysis, and HyperStudy Integrated in HyperWorks Platfo...Moldex3D, Structural Analysis, and HyperStudy Integrated in HyperWorks Platfo...
Moldex3D, Structural Analysis, and HyperStudy Integrated in HyperWorks Platfo...
 
Voltaire - Achieving Peak Performance with Advanced Fabric Management
Voltaire - Achieving Peak Performance with Advanced Fabric ManagementVoltaire - Achieving Peak Performance with Advanced Fabric Management
Voltaire - Achieving Peak Performance with Advanced Fabric Management
 
쉐도우맵을 압축하여 대규모씬에 라이팅을 적용해보자
쉐도우맵을 압축하여 대규모씬에 라이팅을 적용해보자쉐도우맵을 압축하여 대규모씬에 라이팅을 적용해보자
쉐도우맵을 압축하여 대규모씬에 라이팅을 적용해보자
 
7nm "Navi" GPU - A GPU Built For Performance
7nm "Navi" GPU - A GPU Built For Performance 7nm "Navi" GPU - A GPU Built For Performance
7nm "Navi" GPU - A GPU Built For Performance
 
Reduction
ReductionReduction
Reduction
 
3D V-Cache
3D V-Cache 3D V-Cache
3D V-Cache
 
Precomputed Voxelized-Shadows for Large-scale Scene and Many lights
Precomputed Voxelized-Shadows for Large-scale Scene and Many lightsPrecomputed Voxelized-Shadows for Large-scale Scene and Many lights
Precomputed Voxelized-Shadows for Large-scale Scene and Many lights
 
Apple earlier business plan
Apple earlier business planApple earlier business plan
Apple earlier business plan
 
The Technology behind Shadow Warrior, ZTG 2014
The Technology behind Shadow Warrior, ZTG 2014The Technology behind Shadow Warrior, ZTG 2014
The Technology behind Shadow Warrior, ZTG 2014
 
Android tools - 17 avril 2012
Android tools - 17 avril 2012Android tools - 17 avril 2012
Android tools - 17 avril 2012
 

Mehr von Hideki Yamane

Debianの修正はどのように出荷されるか
Debianの修正はどのように出荷されるかDebianの修正はどのように出荷されるか
Debianの修正はどのように出荷されるかHideki Yamane
 
Rethinking debian-release
Rethinking debian-releaseRethinking debian-release
Rethinking debian-releaseHideki Yamane
 
openSUSE tools on Debian
openSUSE tools on DebianopenSUSE tools on Debian
openSUSE tools on DebianHideki Yamane
 
Challenge: convert policy doc from docbook to sphinx
Challenge: convert policy doc from docbook to sphinxChallenge: convert policy doc from docbook to sphinx
Challenge: convert policy doc from docbook to sphinxHideki Yamane
 
8-9-10=Jessie,Stretch,Buster
8-9-10=Jessie,Stretch,Buster8-9-10=Jessie,Stretch,Buster
8-9-10=Jessie,Stretch,BusterHideki Yamane
 
find & improve some bottleneck in Debian project (DebConf14 LT)
find & improve some bottleneck in Debian project (DebConf14 LT)find & improve some bottleneck in Debian project (DebConf14 LT)
find & improve some bottleneck in Debian project (DebConf14 LT)Hideki Yamane
 
Does Cowgirl Dream of Red Swirl?
Does Cowgirl Dream of Red Swirl?Does Cowgirl Dream of Red Swirl?
Does Cowgirl Dream of Red Swirl?Hideki Yamane
 
なれる! Debian開発者 〜 45分でわかる? メンテナ入門
なれる! Debian開発者 〜 45分でわかる? メンテナ入門なれる! Debian開発者 〜 45分でわかる? メンテナ入門
なれる! Debian開発者 〜 45分でわかる? メンテナ入門Hideki Yamane
 
201005 Debian/つくらぐ勉強会 lightning talk
201005 Debian/つくらぐ勉強会 lightning talk 201005 Debian/つくらぐ勉強会 lightning talk
201005 Debian/つくらぐ勉強会 lightning talk Hideki Yamane
 
20090410 Gree Opentech Main
20090410 Gree Opentech Main20090410 Gree Opentech Main
20090410 Gree Opentech MainHideki Yamane
 
20090410 Gree Opentech Presentation (opening)
20090410 Gree Opentech Presentation (opening)20090410 Gree Opentech Presentation (opening)
20090410 Gree Opentech Presentation (opening)Hideki Yamane
 

Mehr von Hideki Yamane (11)

Debianの修正はどのように出荷されるか
Debianの修正はどのように出荷されるかDebianの修正はどのように出荷されるか
Debianの修正はどのように出荷されるか
 
Rethinking debian-release
Rethinking debian-releaseRethinking debian-release
Rethinking debian-release
 
openSUSE tools on Debian
openSUSE tools on DebianopenSUSE tools on Debian
openSUSE tools on Debian
 
Challenge: convert policy doc from docbook to sphinx
Challenge: convert policy doc from docbook to sphinxChallenge: convert policy doc from docbook to sphinx
Challenge: convert policy doc from docbook to sphinx
 
8-9-10=Jessie,Stretch,Buster
8-9-10=Jessie,Stretch,Buster8-9-10=Jessie,Stretch,Buster
8-9-10=Jessie,Stretch,Buster
 
find & improve some bottleneck in Debian project (DebConf14 LT)
find & improve some bottleneck in Debian project (DebConf14 LT)find & improve some bottleneck in Debian project (DebConf14 LT)
find & improve some bottleneck in Debian project (DebConf14 LT)
 
Does Cowgirl Dream of Red Swirl?
Does Cowgirl Dream of Red Swirl?Does Cowgirl Dream of Red Swirl?
Does Cowgirl Dream of Red Swirl?
 
なれる! Debian開発者 〜 45分でわかる? メンテナ入門
なれる! Debian開発者 〜 45分でわかる? メンテナ入門なれる! Debian開発者 〜 45分でわかる? メンテナ入門
なれる! Debian開発者 〜 45分でわかる? メンテナ入門
 
201005 Debian/つくらぐ勉強会 lightning talk
201005 Debian/つくらぐ勉強会 lightning talk 201005 Debian/つくらぐ勉強会 lightning talk
201005 Debian/つくらぐ勉強会 lightning talk
 
20090410 Gree Opentech Main
20090410 Gree Opentech Main20090410 Gree Opentech Main
20090410 Gree Opentech Main
 
20090410 Gree Opentech Presentation (opening)
20090410 Gree Opentech Presentation (opening)20090410 Gree Opentech Presentation (opening)
20090410 Gree Opentech Presentation (opening)
 

Kürzlich hochgeladen

Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 

Kürzlich hochgeladen (20)

Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

How to fight with "bloated repository"

  • 1. How to fight with “bloated repository” Hideki Yamane (Debian Project:Debian Developer) <henrich @ debian.org/or.jp> http://wiki.debian.org/HidekiYamane
  • 2. Today's Agenda ● How large Debian Repository is ● One day, I found a solution... ● Is it really effective? ● Problem on slower Arch ● How shrink
  • 3. Debian supports... Many many packages Many CPU architectures Some kernels
  • 4. How large Debian Repository is? Arch: source, all, amd64, armel, armhf, hurd- i386, i386, ia64, kfreebsd-amd64, kfree-bsd- i386, mips, mipsel, powerpc, s390, s390x, sparc
  • 5. How large Debian Repository is? Arch: source 52GB, all 57GB, amd64 53GB, armel 38GB, armhf 26GB, hurd-i386 14GB, i386 50GB, ia64 42GB, kfreebsd-amd64 37GB, kfreebsd-i386 36GB, mips 35GB, mipsel 34GB, powerpc 42GB, s390 36GB, s390x 24GB, sparc 39GB... Total? (http://www.debian.org/mirror/size)
  • 6. How large Debian Repository is? Arch: source 52GB, all 57GB, amd64 53GB, armel 38GB, armhf 26GB, hurd-i386 14GB, i386 50GB, ia64 42GB, kfreebsd-amd64 37GB, kfreebsd-i386 36GB, mips 35GB, mipsel 34GB, powerpc 42GB, s390 36GB, s390x 24GB, sparc 39GB... Total: 615GB!! (http://www.debian.org/mirror/size)
  • 8. Can we shrink this? Yes, in some ways... Drop support architectures Delete packages from archive
  • 9. Can we shrink this? However, we don't want such solutions Drop support architectures Delete packages from archive
  • 10. Use XZ! Default compression is gzip xz can reduce file size
  • 11. Use XZ! ex) fonts-horai-umefont (I'm maintainer :-) By gzip -9 : 43,664kb By xz : 25,476kb
  • 12. Use XZ! ex) fonts-horai-umefont (I'm maintainer :-) By gzip -9 : 43,664kb By xz  -9 : 25,476kb → 5,916kb
  • 13. WARNING! The archive software now accepts packages using xz for compression in addition to gzip and bzip2 for both source and binary packages. (snip) Additionally please only use xz (or bzip2 for that matter) if your package really profits from its usage (for example, it provides a significant space saving). While those methods may compress better they often use more CPU time to do so and a very small decrease in package size is hardly worth the extra effort placed on slower systems. Think of both user systems and the Debian buildds which will waste more time – an especially bad problem on slower architectures. (“Thearchivenowsupportsxzcompression”byAnsgarBurchardt<ansgar@debian.org> http://lists.debian.org/debian-devel-announce/2011/08/msg00001.html)
  • 14. WARNING! The archive software now accepts packages using xz for compression in addition to gzip and bzip2 for both source and binary packages. (snip) Additionally please only use xz (or bzip2 for that matter) if your package really profits from its usage (for example, it provides a significant space saving). While those methods may compress better they often use more CPU time to do so and a very small decrease in package size is hardly worth the extra effort placed on slower systems. Think of both user systems and the Debian buildds which will waste more time – an especially bad problem on slower architectures. (“Thearchivenowsupportsxzcompression”byAnsgarBurchardt<ansgar@debian.org> http://lists.debian.org/debian-devel-announce/2011/08/msg00001.html)
  • 15. XZ on Slower arch is problem... It'll eat most CPU time
  • 16. XZ on Slower arch is problem... Then... if only on Powerful arch?
  • 17. XZ on Powerful arch is NOT problem assumption: use XZ on Intel/AMD arch by default
  • 18. Before XZ... 60 57 55 52 50 42 40 39 37 size(GB) 30 20 14 10 0 all i386 amd64 hurd-i386 ia64 kfreebsd-amd64 kfreebsd-i386
  • 19. After XZ! 60 57 55 52 50 45 42 40 39 37 34 32 before size(GB) 30 after xz 24 24 23 20 14 10 10 0 all i386 amd64 hurd-i386 ia64 kfreebsd-amd64 kfreebsd-i386
  • 20. How shrink it is 350 300 250 kfreebsd-i386 kfreebsd-amd64 200 ia64 hurd-i386 amd64 150 i386 all 100 50 0 before after xz
  • 21. How shrink it is Reduction architecture before after xz difference Rate all 57 ??? --- --- i386 52 ??? --- --- amd64 55 ??? --- --- hurd-i386 14 ??? --- --- ia64 42 ??? --- --- kfreebsd-amd64 39 ??? --- --- kfreebsd-i386 37 ??? --- --- total 296 ??? --- ---
  • 22. How shrink it is Reduction architecture before after xz difference Rate all 57 45 -12 21% i386 52 32 -20 38% amd64 55 34 -21 38% hurd-i386 14 10 -4 29% ia64 42 24 -18 43% kfreebsd-amd64 39 24 -15 38% kfreebsd-i386 37 23 -14 38% total 296 192 -104 35%
  • 23. Conclusion ● How big Debian Repository is : 615GB ● One day, I found a solution... : use xz ● Is it really effective? : YES! ● Problem on slower Arch : x86 + all ● How shrink : 100GB! So, recommend to apply XZ to all, *i386 and *amd64 by default (exclude Priority:require)
  • 24. Also, Thanks to nice pictures SpaceFun ● http://wiki.debian.org/DebianArt/Themes/SpaceFun By Valessio Brito licensed under GPL-2 Debian Theme (etch?) ● Debian Theme (by @nogajun) ● Thinking ● http://www.flickr.com/photos/nachoissd/3499105933/ By Victor Pérez :: victorperezp.com licensed under Creative Commons Attribution 2.0 Generic (CC BY 2.0) A successful tool is one that was used to do something undreamed of by its author. ● http://www.flickr.com/photos/katerha/5746905652/ By katerha licensed under Creative Commons Attribution 2.0 Generic (CC BY 2.0)