SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Downloaden Sie, um offline zu lesen
BUD17-406
Toolchain Coordination
Maxim Kuvyrkov (Linaro), Siddhesh Poyarekar (Linaro)
Joey Ye (ARM)
ENGINEERS AND DEVICES
WORKING TOGETHER
Upstream Toolchain Coordination
● Linaro TCWG
○ GNU Toolchain
○ LLVM Toolchain
● Linaro Services
○ GNU Toolchain
● ARM
○ GNU Toolchain
○ LLVM Toolchain
● ST
○ GNU Toolchain
○ LLVM Toolchain
ENGINEERS AND DEVICES
WORKING TOGETHER
Linaro TCWG: GNU Toolchain
● GCC: IPA-CP improvements
● GCC: IPA pure-const improvements
● GCC: Gimple reassociation optimizations
● GCC: Investigate LTO performance
● Glibc: C11 threads support in Glibc
● Glibc: Continue code cleanup and consolidation
● GDB: Kernel Awareness
ENGINEERS AND DEVICES
WORKING TOGETHER
Linaro TCWG: LLVM Toolchain
● LLD: Make LLD self-hosting with Clang on ARM + testsuite
● LLDB: Complete hardware breakpoint support
● LLVM: Global ISel for ARM (basic coverage)
● LLVM: Investigate libomp vs libgomp
● LLVM: Buildbot improvements
ENGINEERS AND DEVICES
WORKING TOGETHER
Linaro TCWG: Other tools
● OpenOCD: AArch64 & GDB Remote debugging interoperability
● ILP32 ABI: Review Glibc patches, assist with delivery
● LuaJIT: Performance improvement investigation
ENGINEERS AND DEVICES
WORKING TOGETHER
Linaro Services: GCC
● GCC optimizations for falkor
○ Pipeline description
○ Tuning
○ Loop Array Prefetching
● Generic GCC work
○ Bug fixes in the scheduler, vectorizer
○ Interplay of loop distribution and vectorizer passes
■ Make alias analysis smarter
■ Reverse CSE when it affects loop distribution adversely
ENGINEERS AND DEVICES
WORKING TOGETHER
Linaro Services: Glibc
● Glibc optimizations for falkor and aarch64
○ Optimized routines for falkor
○ Tunables support for IFUNC selection overrides
○ Feature parity with x86 - sysconf cache info
● Generic glibc work
○ Systemwide tunables
○ Tightening environment variable processing in AT_SECURE processes
ARM Update to BUD17
TCWG
Joey Ye
Senior Engineer Manager
9
GNU development in 2016
▪ Push architecture features, Performance optimizations and defect fixes into GCC7
▪ Architecture features
▪ ARMv8.2-A full support
▪ ARMv8-M full support
▪ New architectures (SVE, ARMv8.3-A)
▪ Reviewing ILP32
▪ Performance optimizations
▪ Vectorizer enhancement for aarch64
▪ IVOpts for aarch32/aarch64
▪ Store widening
▪ If conversion enhancement
▪ Observed performance gain on SPEC
▪ Defect fixes
▪ Required as aarch64 becomes a primary platform
▪ 7 engineers attended GCC Cauldron
10
GNU focus 2017
▪ Push architecture features, optimizations and defect fixes into GCC8
▪ Architecture features enabling
▪ Optimizing for server benchmark
▪ Improve CPU2006
▪ Look into new version of SPEC benchmark
▪ Optimization tasks
▪ Vect-math library enabling and optimization
▪ Math function optimization (libm & newlib)
▪ Vectorizer enhancement for aarch64
▪ GCC prefetcher
▪ Watching GCC aarch64 performance regression
▪ Cleanup GCC aarch64 correctness regression
11
LLVM development in late 2016, early 2017
▪ Architecture features
▪ ARMv8.3-A full support – ongoing
▪ SVE support – ongoing
▪ Optimizations
▪ More code size improvements: see Sjoerd Meijer’s upcoming presentation at EuroLLVM (March 27/28,
Saarbrücken).
▪ Continuous tracking of top-of-trunk performance on a range of benchmarks and cores; reacting to get
performance regressions fixed quickly. See Kristof Beyls’s FOSDEM2017 presentation last month.
▪ LLVM framework improvements
▪ Making it easier to write pipeline models for ARM code.
▪ Contributing to GlobalISel development.
▪ Other improvements
▪ Libc++: improve multi-threading support; making no-exceptions work.
▪ Debug info at optimization: significant improvement on correctly describing variables in loops.
▪ Android and Chromeos enabling: fixed a range of defects.
▪ Infrastructure: LNT improvements.
▪ Three presentations at LLVM developers meetings and FOSDEM
▪ Contributed to the organization of US/Euro LLVM dev meetings and FOSDEM
12
LLVM Focus 2017
▪ Enable architecture features
▪ More code size optimizations
▪ Continuous tracking of top-of-trunk performance
▪ Contributing to GlobalISel development
▪ Android and Chromeos enabling
▪ Infrastructure: LNT improvements
▪ Optimizing libomp
13
Expect Linaro to carry on
▪ Continue current contribution from Linaro
▪ LLD, GDB, Qemu
▪ Continue Linaro GNUTools binary release
▪ AArch64
▪ AArch32 A-profile
▪ Linux target
▪ Continue GCC/LLVM quality testing
▪ Continue GCC optimizations
14
Additional help needed
▪ SVE enabling?
▪ Qemu
▪ ACLE in GCC
▪ More LLVM quality test?
▪ Android build test and trunk perf test
▪ AArch32 R/M profile bare-metal binary release?
▪ Linux, Windows and Mac host
▪ Optimize libgomp?
▪ Find and verify major design flaws in GOMP
▪ Verify applicability of per-thread task queues approach
▪ Handle bigger scale project for re-designing GOMP to be more like LLVM libomp
▪ Help to verify correctness of proposed changes (e.g. check that OpenMP3.1 Validation Suite test
passes; tasking benchmarks, etc. are still working)
Thank You
#BUD17
For further information: www.linaro.org
BUD17 keynotes and videos on: connect.linaro.org

Weitere ähnliche Inhalte

Mehr von Linaro

Deep Learning Neural Network Acceleration at the Edge - Andrea Gallo
Deep Learning Neural Network Acceleration at the Edge - Andrea GalloDeep Learning Neural Network Acceleration at the Edge - Andrea Gallo
Deep Learning Neural Network Acceleration at the Edge - Andrea GalloLinaro
 
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta Vekaria
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta VekariaArm Architecture HPC Workshop Santa Clara 2018 - Kanta Vekaria
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta VekariaLinaro
 
Huawei’s requirements for the ARM based HPC solution readiness - Joshua Mora
Huawei’s requirements for the ARM based HPC solution readiness - Joshua MoraHuawei’s requirements for the ARM based HPC solution readiness - Joshua Mora
Huawei’s requirements for the ARM based HPC solution readiness - Joshua MoraLinaro
 
Bud17 113: distribution ci using qemu and open qa
Bud17 113: distribution ci using qemu and open qaBud17 113: distribution ci using qemu and open qa
Bud17 113: distribution ci using qemu and open qaLinaro
 
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018Linaro
 
HPC network stack on ARM - Linaro HPC Workshop 2018
HPC network stack on ARM - Linaro HPC Workshop 2018HPC network stack on ARM - Linaro HPC Workshop 2018
HPC network stack on ARM - Linaro HPC Workshop 2018Linaro
 
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...Linaro
 
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...Linaro
 
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...Linaro
 
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...Linaro
 
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineHKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineLinaro
 
HKG18-100K1 - George Grey: Opening Keynote
HKG18-100K1 - George Grey: Opening KeynoteHKG18-100K1 - George Grey: Opening Keynote
HKG18-100K1 - George Grey: Opening KeynoteLinaro
 
HKG18-318 - OpenAMP Workshop
HKG18-318 - OpenAMP WorkshopHKG18-318 - OpenAMP Workshop
HKG18-318 - OpenAMP WorkshopLinaro
 
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineHKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineLinaro
 
HKG18-315 - Why the ecosystem is a wonderful thing, warts and all
HKG18-315 - Why the ecosystem is a wonderful thing, warts and allHKG18-315 - Why the ecosystem is a wonderful thing, warts and all
HKG18-315 - Why the ecosystem is a wonderful thing, warts and allLinaro
 
HKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
HKG18- 115 - Partitioning ARM Systems with the Jailhouse HypervisorHKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
HKG18- 115 - Partitioning ARM Systems with the Jailhouse HypervisorLinaro
 
HKG18-TR08 - Upstreaming SVE in QEMU
HKG18-TR08 - Upstreaming SVE in QEMUHKG18-TR08 - Upstreaming SVE in QEMU
HKG18-TR08 - Upstreaming SVE in QEMULinaro
 
HKG18-113- Secure Data Path work with i.MX8M
HKG18-113- Secure Data Path work with i.MX8MHKG18-113- Secure Data Path work with i.MX8M
HKG18-113- Secure Data Path work with i.MX8MLinaro
 
HKG18-120 - Devicetree Schema Documentation and Validation
HKG18-120 - Devicetree Schema Documentation and Validation HKG18-120 - Devicetree Schema Documentation and Validation
HKG18-120 - Devicetree Schema Documentation and Validation Linaro
 
HKG18-223 - Trusted FirmwareM: Trusted boot
HKG18-223 - Trusted FirmwareM: Trusted bootHKG18-223 - Trusted FirmwareM: Trusted boot
HKG18-223 - Trusted FirmwareM: Trusted bootLinaro
 

Mehr von Linaro (20)

Deep Learning Neural Network Acceleration at the Edge - Andrea Gallo
Deep Learning Neural Network Acceleration at the Edge - Andrea GalloDeep Learning Neural Network Acceleration at the Edge - Andrea Gallo
Deep Learning Neural Network Acceleration at the Edge - Andrea Gallo
 
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta Vekaria
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta VekariaArm Architecture HPC Workshop Santa Clara 2018 - Kanta Vekaria
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta Vekaria
 
Huawei’s requirements for the ARM based HPC solution readiness - Joshua Mora
Huawei’s requirements for the ARM based HPC solution readiness - Joshua MoraHuawei’s requirements for the ARM based HPC solution readiness - Joshua Mora
Huawei’s requirements for the ARM based HPC solution readiness - Joshua Mora
 
Bud17 113: distribution ci using qemu and open qa
Bud17 113: distribution ci using qemu and open qaBud17 113: distribution ci using qemu and open qa
Bud17 113: distribution ci using qemu and open qa
 
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018
 
HPC network stack on ARM - Linaro HPC Workshop 2018
HPC network stack on ARM - Linaro HPC Workshop 2018HPC network stack on ARM - Linaro HPC Workshop 2018
HPC network stack on ARM - Linaro HPC Workshop 2018
 
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...
 
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
 
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...
 
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
 
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineHKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
 
HKG18-100K1 - George Grey: Opening Keynote
HKG18-100K1 - George Grey: Opening KeynoteHKG18-100K1 - George Grey: Opening Keynote
HKG18-100K1 - George Grey: Opening Keynote
 
HKG18-318 - OpenAMP Workshop
HKG18-318 - OpenAMP WorkshopHKG18-318 - OpenAMP Workshop
HKG18-318 - OpenAMP Workshop
 
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineHKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
 
HKG18-315 - Why the ecosystem is a wonderful thing, warts and all
HKG18-315 - Why the ecosystem is a wonderful thing, warts and allHKG18-315 - Why the ecosystem is a wonderful thing, warts and all
HKG18-315 - Why the ecosystem is a wonderful thing, warts and all
 
HKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
HKG18- 115 - Partitioning ARM Systems with the Jailhouse HypervisorHKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
HKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
 
HKG18-TR08 - Upstreaming SVE in QEMU
HKG18-TR08 - Upstreaming SVE in QEMUHKG18-TR08 - Upstreaming SVE in QEMU
HKG18-TR08 - Upstreaming SVE in QEMU
 
HKG18-113- Secure Data Path work with i.MX8M
HKG18-113- Secure Data Path work with i.MX8MHKG18-113- Secure Data Path work with i.MX8M
HKG18-113- Secure Data Path work with i.MX8M
 
HKG18-120 - Devicetree Schema Documentation and Validation
HKG18-120 - Devicetree Schema Documentation and Validation HKG18-120 - Devicetree Schema Documentation and Validation
HKG18-120 - Devicetree Schema Documentation and Validation
 
HKG18-223 - Trusted FirmwareM: Trusted boot
HKG18-223 - Trusted FirmwareM: Trusted bootHKG18-223 - Trusted FirmwareM: Trusted boot
HKG18-223 - Trusted FirmwareM: Trusted boot
 

Kürzlich hochgeladen

DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
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
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
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
 
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
 
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
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
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
 
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
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
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
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 

Kürzlich hochgeladen (20)

DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
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
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
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...
 
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
 
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
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
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
 
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
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
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
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 

BUD17-406: Toolchain Coordination

  • 1. BUD17-406 Toolchain Coordination Maxim Kuvyrkov (Linaro), Siddhesh Poyarekar (Linaro) Joey Ye (ARM)
  • 2. ENGINEERS AND DEVICES WORKING TOGETHER Upstream Toolchain Coordination ● Linaro TCWG ○ GNU Toolchain ○ LLVM Toolchain ● Linaro Services ○ GNU Toolchain ● ARM ○ GNU Toolchain ○ LLVM Toolchain ● ST ○ GNU Toolchain ○ LLVM Toolchain
  • 3. ENGINEERS AND DEVICES WORKING TOGETHER Linaro TCWG: GNU Toolchain ● GCC: IPA-CP improvements ● GCC: IPA pure-const improvements ● GCC: Gimple reassociation optimizations ● GCC: Investigate LTO performance ● Glibc: C11 threads support in Glibc ● Glibc: Continue code cleanup and consolidation ● GDB: Kernel Awareness
  • 4. ENGINEERS AND DEVICES WORKING TOGETHER Linaro TCWG: LLVM Toolchain ● LLD: Make LLD self-hosting with Clang on ARM + testsuite ● LLDB: Complete hardware breakpoint support ● LLVM: Global ISel for ARM (basic coverage) ● LLVM: Investigate libomp vs libgomp ● LLVM: Buildbot improvements
  • 5. ENGINEERS AND DEVICES WORKING TOGETHER Linaro TCWG: Other tools ● OpenOCD: AArch64 & GDB Remote debugging interoperability ● ILP32 ABI: Review Glibc patches, assist with delivery ● LuaJIT: Performance improvement investigation
  • 6. ENGINEERS AND DEVICES WORKING TOGETHER Linaro Services: GCC ● GCC optimizations for falkor ○ Pipeline description ○ Tuning ○ Loop Array Prefetching ● Generic GCC work ○ Bug fixes in the scheduler, vectorizer ○ Interplay of loop distribution and vectorizer passes ■ Make alias analysis smarter ■ Reverse CSE when it affects loop distribution adversely
  • 7. ENGINEERS AND DEVICES WORKING TOGETHER Linaro Services: Glibc ● Glibc optimizations for falkor and aarch64 ○ Optimized routines for falkor ○ Tunables support for IFUNC selection overrides ○ Feature parity with x86 - sysconf cache info ● Generic glibc work ○ Systemwide tunables ○ Tightening environment variable processing in AT_SECURE processes
  • 8. ARM Update to BUD17 TCWG Joey Ye Senior Engineer Manager
  • 9. 9 GNU development in 2016 ▪ Push architecture features, Performance optimizations and defect fixes into GCC7 ▪ Architecture features ▪ ARMv8.2-A full support ▪ ARMv8-M full support ▪ New architectures (SVE, ARMv8.3-A) ▪ Reviewing ILP32 ▪ Performance optimizations ▪ Vectorizer enhancement for aarch64 ▪ IVOpts for aarch32/aarch64 ▪ Store widening ▪ If conversion enhancement ▪ Observed performance gain on SPEC ▪ Defect fixes ▪ Required as aarch64 becomes a primary platform ▪ 7 engineers attended GCC Cauldron
  • 10. 10 GNU focus 2017 ▪ Push architecture features, optimizations and defect fixes into GCC8 ▪ Architecture features enabling ▪ Optimizing for server benchmark ▪ Improve CPU2006 ▪ Look into new version of SPEC benchmark ▪ Optimization tasks ▪ Vect-math library enabling and optimization ▪ Math function optimization (libm & newlib) ▪ Vectorizer enhancement for aarch64 ▪ GCC prefetcher ▪ Watching GCC aarch64 performance regression ▪ Cleanup GCC aarch64 correctness regression
  • 11. 11 LLVM development in late 2016, early 2017 ▪ Architecture features ▪ ARMv8.3-A full support – ongoing ▪ SVE support – ongoing ▪ Optimizations ▪ More code size improvements: see Sjoerd Meijer’s upcoming presentation at EuroLLVM (March 27/28, Saarbrücken). ▪ Continuous tracking of top-of-trunk performance on a range of benchmarks and cores; reacting to get performance regressions fixed quickly. See Kristof Beyls’s FOSDEM2017 presentation last month. ▪ LLVM framework improvements ▪ Making it easier to write pipeline models for ARM code. ▪ Contributing to GlobalISel development. ▪ Other improvements ▪ Libc++: improve multi-threading support; making no-exceptions work. ▪ Debug info at optimization: significant improvement on correctly describing variables in loops. ▪ Android and Chromeos enabling: fixed a range of defects. ▪ Infrastructure: LNT improvements. ▪ Three presentations at LLVM developers meetings and FOSDEM ▪ Contributed to the organization of US/Euro LLVM dev meetings and FOSDEM
  • 12. 12 LLVM Focus 2017 ▪ Enable architecture features ▪ More code size optimizations ▪ Continuous tracking of top-of-trunk performance ▪ Contributing to GlobalISel development ▪ Android and Chromeos enabling ▪ Infrastructure: LNT improvements ▪ Optimizing libomp
  • 13. 13 Expect Linaro to carry on ▪ Continue current contribution from Linaro ▪ LLD, GDB, Qemu ▪ Continue Linaro GNUTools binary release ▪ AArch64 ▪ AArch32 A-profile ▪ Linux target ▪ Continue GCC/LLVM quality testing ▪ Continue GCC optimizations
  • 14. 14 Additional help needed ▪ SVE enabling? ▪ Qemu ▪ ACLE in GCC ▪ More LLVM quality test? ▪ Android build test and trunk perf test ▪ AArch32 R/M profile bare-metal binary release? ▪ Linux, Windows and Mac host ▪ Optimize libgomp? ▪ Find and verify major design flaws in GOMP ▪ Verify applicability of per-thread task queues approach ▪ Handle bigger scale project for re-designing GOMP to be more like LLVM libomp ▪ Help to verify correctness of proposed changes (e.g. check that OpenMP3.1 Validation Suite test passes; tasking benchmarks, etc. are still working)
  • 15. Thank You #BUD17 For further information: www.linaro.org BUD17 keynotes and videos on: connect.linaro.org