27 research outputs found
The Unexpected Efficiency of Bin Packing Algorithms for Dynamic Storage Allocation in the Wild: An Intellectual Abstract
Recent work has shown that viewing allocators as black-box 2DBP solvers bears
meaning. For instance, there exists a 2DBP-based fragmentation metric which
often correlates monotonically with maximum resident set size (RSS). Given the
field's indeterminacy with respect to fragmentation definitions, as well as the
immense value of physical memory savings, we are motivated to set
allocator-generated placements against their 2DBP-devised, makespan-optimizing
counterparts. Of course, allocators must operate online while 2DBP algorithms
work on complete request traces; but since both sides optimize criteria related
to minimizing memory wastage, the idea of studying their relationship preserves
its intellectual--and practical--interest.
Unfortunately no implementations of 2DBP algorithms for DSA are available.
This paper presents a first, though partial, implementation of the
state-of-the-art. We validate its functionality by comparing its outputs'
makespan to the theoretical upper bound provided by the original authors. Along
the way, we identify and document key details to assist analogous future
efforts.
Our experiments comprise 4 modern allocators and 8 real application
workloads. We make several notable observations on our empirical evidence: in
terms of makespan, allocators outperform Robson's worst-case lower bound
of the time. In of cases, GNU's \texttt{malloc}
implementation demonstrates equivalent or superior performance to the 2DBP
state-of-the-art, despite the second operating offline.
Most surprisingly, the 2DBP algorithm proves competent in terms of
fragmentation, producing up to x better solutions. Future research can
leverage such insights towards memory-targeting optimizations.Comment: 13 pages, 10 figures, 3 tables. To appear in ISMM '2
Resource Aware GPU Scheduling in Kubernetes Infrastructure
Nowadays, there is an ever-increasing number of artificial intelligence inference workloads pushed and executed on the cloud. To effectively serve and manage the computational demands, data center operators have provisioned their infrastructures with accelerators. Specifically for GPUs, support for efficient management lacks, as state-of-the-art schedulers and orchestrators, threat GPUs only as typical compute resources ignoring their unique characteristics and application properties. This phenomenon combined with the GPU over-provisioning problem leads to severe resource under-utilization. Even though prior work has addressed this problem by colocating applications into a single accelerator device, its resource agnostic nature does not manage to face the resource under-utilization and quality of service violations especially for latency critical applications.
In this paper, we design a resource aware GPU scheduling framework, able to efficiently colocate applications on the same GPU accelerator card. We integrate our solution with Kubernetes, one of the most widely used cloud orchestration frameworks. We show that our scheduler can achieve 58.8% lower end-to-end job execution time 99%-ile, while delivering 52.5% higher GPU memory usage, 105.9% higher GPU utilization percentage on average and 44.4% lower energy consumption on average, compared to the state-of-the-art schedulers, for a variety of ML representative workloads
Design space exploration and synthesis methodologies for coarse-grained reconfigurable coprocessor architectures
Technological advances in micro-electronics, enabled the development of complex embedded computing devices, i.e. mobile phones, digital cameras, etc., which dominate the modern everyday life. Such type of systems usually execute a large but specific set of applications, which combine highly dynamic behavior together with high demands in computing power. The designers have to deal with the increased system complexity, in order to provide design solutions that satisfy a set of stringent functional and financial constraints. Today, it is broadly accepted that without the use of automated tools to optimize the hardware and software system's coefficients, designers are led to the adoption of sub-optimal design solutions. This thesis addresses the above problem by developing a set of methodologies for efficient design space exploration and architectural synthesis for digital signal processing coprocessors. Specifically, the proposed techniques target to (i) the development of customized software solutions for dynamic memory management of multi-threaded applications and (ii) the design of efficient customized and reconfigurable coprocessor architectures. Regarding to the automated design space exploration methodologies, we model and analyze the basic building blocks of multi-threaded dynamic memory management for multi-core platforms with shared memory. We propose new algorithms for exploring and traversing the defined parameter space based on constrained orthogonal design space partitioning, which enables multi-objective optimization and automated code generation of application specific dynamic memory management. In addition, we propose a new approach for defining an extended design space for hardware coprocessor synthesis, which takes into account the combined impact of behavioral-algorithmic and architectural level parameters. New exploration algorithms are developed to enable fast and efficient exploration that converges to more globally optimal design solutions. Regarding to the architectural synthesis of reconfigurable coprocessors, we introduce the Flexibility Inlining technique for designing coarse-grained reconfigurable architectures at the circuit level. The proposed technique exploits the mirror symmetry found in ASIC implementations of arithmetic circuits and through appropriate RTL transformations achieves the design of a new reconfigurable micro-architectural template that exploits in a combined manner the architectural optimizations of horizontal parallelism, vertical parallel and operation chaining. In addition, we present a second micro-architectural template that use advanced arithmetic optimization techniques for designing flexible coprocessor datapaths. Each of the aforementioned reconfigurable architectures is complemented with new high level synthesis algorithms in order to enable automated mapping of applications onto the introduced datapaths. We study the effectiveness of the proposed methodologies through multiple and extensive experimental evaluations of the proposed solutions in comparison with state-of-the-art design solutions. In any case, it seems that the adoption of the proposed methodologies leads to a significant shift of the design solutions towards more efficient implementations.Οι τεχνολογικές εξελίξεις στον τομέα της μικρο-ηλεκτρονικής επιτρέπουν σήμερα την ανάπτυξη πολύπλοκων ενσωματωμένων υπολογιστικών συσκευών π.χ. κινητά τηλέφωνα, ψηφιακές κάμερες, που κυριαρχούν τη σύγχρονη καθημερινότητα. Οι σχεδιαστές καλούνται να αντιμετωπίσουν την αυξημένη πολυπλοκότητα παρέχοντας σχεδιαστικές λύσεις που ικανοποιούν ένα αντικρουόμενο σύνολο αυστηρών λειτουργικών και οικονομικών περιορισμών. Σήμερα είναι γενικά αποδεκτό ότι χωρίς τη χρήση αυτοματοποιημένων εργαλείων που βελτιστοποιούν αισθητά τις συνιστώσες υλικού και λογισμικού του συστήματος οι σχεδιαστές οδηγούνται στην υιοθέτηση υπο-βέλτιστων σχεδιαστικών λύσεων. Η παρούσα διατριβή στοχεύει στην αντιμετώπιση του παραπάνω προβλήματος μέσω της ανάπτυξης ενός συνόλου μεθοδολογιών σχεδίασης που επιτρέπουν αποδοτική εξερεύνηση και σύνθεση αρχιτεκτονικών λύσεων υλικού και λογισμικού. Πιο συγκεκριμένα οι προτεινόμενες μεθοδολογίες αφορούν (i) την ανάπτυξη εξειδικευμένων λύσεων λογισμικού για δυναμική διαχείριση μνήμης πολύ-νηματικών εφαρμογών και (ii) τη σχεδίαση αποδοτικών λύσεων υλικού τόσο για επαναδιατάξιμες όσο και εξειδικευμένες αρχιτεκτονικές συνεπεξεργαστή. Σε ότι αφορά στις μεθοδολογίες αυτοματοποιημένης εξερεύνησης παρουσιάζεται η μοντελοποίηση και η ανάλυση σε βασικές συνιστώσες του χώρου σχεδίασης των δυναμικών διαχειριστών μνήμης για πολύ-νηματικές εφαρμογές. Προτείνονται νέοι αλγόριθμοι εξερεύνησης και διάσχισης του παραπάνω χώρου σχεδίασης βάσει μεθόδων ορθογώνιου διαχωρισμού των αποφάσεων που επιτρέπουν την πολύ-κριτηριακή εξειδίκευση και την αυτοματοποιημένη παραγωγή λογισμικού των δυναμικών διαχειριστών μνήμης. Επιπλέον προτείνεται μια νέα θεώρηση για την παραμετρική μοντελοποίηση του χώρου σχεδίασης εξειδικευμένων συνεπεξεργαστών υλικού η οποία λαμβάνει υπόψη τις επιδράσεις των σχεδιαστικών αποφάσεων από τα επίπεδα αφαίρεσης συμπεριφοράς αλγορίθμου και αρχιτεκτονικής με στόχο τη συνδυασμένη βελτιστοποίηση της επίδοσης και της επιφάνειας υλικού. Νέοι αλγόριθμοι εξερεύνησης αναπτύχθηκαν ώστε να επιτυγχάνεται γρήγορη αναζήτηση με αποδοτική σύγκλιση στις καθολικά βέλτιστες σχεδιαστικές λύσεις. Σε ότι αφορά στις μεθοδολογίες αρχιτεκτονικής σύνθεσης επαναδιατάξιμων συνεπεξεργαστών υλικού παρουσιάζεται η τεχνική Εισαγωγή Ευελιξίας για κυκλωματική σχεδίαση επαναδιατάξιμων αρχιτεκτονικών αδρομερούς υφής. Η προτεινόμενη τεχνική εκμεταλλεύεται την κατοπτρική συμμετρία στις διασυνδέσεις εξειδικευμένων (μη-επαναδιατάξιμων) αριθμητικών κυκλωμάτων και μέσω κατάλληλων μετασχηματισμών επιτυγχάνει τη σχεδίαση ενός νέου επαναδιατάξιμου μικρο-αρχιτεκτονικού πρότυπου το οποίο συνδυάζει τον οριζόντιο και κάθετο παραλληλισμό με δυνατότητες υπολογιστικής αλυσίδωσης λειτουργιών. Επιπροσθέτως, προτείνεται και μια δεύτερη επαναδιατάξιμη αρχιτεκτονική συνεπεξεργαστή, η οποία βασίζεται στη χρήση μεθόδων αριθμητικής βελτιστοποίησης για σχεδίαση ευέλικτων συνεπεξεργαστών με αλυσίδωση λειτουργιών. Για κάθε επαναδιατάξιμο συνεπεξεργαστή αναπτύχθηκαν νέοι αλγόριθμοι σχεδίασης για αυτοματοποιημένη απεικόνιση εφαρμογών στις προτεινόμενες αρχιτεκτονικές. Η μελέτη της αποδοτικότητας των προτεινόμενων μεθοδολογιών πραγματοποιήθηκε μέσω εκτενών πειραματικών αξιολογήσεων και συγκρίσεων με τις αντίστοιχες σχεδιαστικές λύσεις αιχμής. Σε κάθε περίπτωση, διαπιστώνεται πως η υιοθέτηση των μεθοδολογιών που αναπτύχθηκαν στην παρούσα διατριβή, οδηγεί σε σημαντική μετατόπιση των σχεδιαστικών λύσεων προς πιο αποδοτικές υλοποιήσεις
Thermal-Aware Datapath Merging for Coarse-Grained Reconfigurable Processors
The increased power densities of deep submicron process technologies have made on-chip temperature to become a critical design issue for high-performance integrated circuits. In this paper, we address the datapath merging problem faced during the design of coarse-grained reconfigurable processors from a thermal-aware perspective. Assuming a reconfigurable processor able to execute a sequence of datapath configurations, we formulate and efficiently solve the thermal-aware datapath merging problem as a minimum cost network flow. In addition, we integrate floorplan awareness of the underlying reconfigurable processor guiding the merging decision to account also for the effects of heat diffusion. Extensive experimentation regarding different configuration scenarios, technology nodes and clock frequencies showed that the adoption of the proposed thermal-aware methodology delivers up to 8.27K peak temperature reductions and achieves better temperature flattening in comparison to a low power but thermal-unaware approach
Design space exploration and synthesis methodologies for coarse-grained reconfigurable coprocessors
275 σ.Οι τεχνολογικες εξελιξεις στον τομεα της μικρο-ηλεκτρονικης επιτρεπουν σημερα την αναπτυξη πολυπλοκων ενσωματωμενων υπολογιστικων συσκευων π.χ. κινητα τηλεφωνα, ψηφιακες καμερες, που κυριαρχουν τη συγχρονη καθημερινοτητα. οι σχεδιαστες καλουνται να αντιμετωπισουν την αυξημενη πολυπλοκοτητα, παρεχοντας σχεδιαστικες λυσεις που ικανοποιουν ενα αντικρουομενο συνολο αυστηρων λειτουργικων και οικονομικων περιορισμων. σημερα, ειναι γενικα αποδεκτο οτι χωρις τη χρηση αυτοματοποιημενων εργαλειων που βελτιστοποιουν αισθητα τις συνιστωσες υλικου και λογισμικου του συστηματος, οι σχεδιαστες οδηγουνται στην υιοθετηση υπο-βελτιστων σχεδιαστικων λυσεων. η παρουσα διατριβη στοχευει στην αντιμετωπιση του παραπανω προβληματος μεσω της αναπτυξης ενος συνολου μεθοδολογιων σχεδιασης που επιτρεπουν αποδοτικη εξερευνηση και συνθεση αρχιτεκτονικων λυσεων υλικου και λογισμικου. πιο συγκεκριμενα, οι προτεινομενες μεθοδολογιες αφορουν (i) την αναπτυξη εξειδικευμενων λυσεων λογισμικου για δυναμικη διαχειριση μνημης πολυ-νηματικων εφαρμογων και (ii) τη σχεδιαση αποδοτικων λυσεων υλικου τοσο για επαναδιαταξιμες οσο και εξειδικευμενες αρχιτεκτονικες συνεπεξεργαστη. σε οτι αφορα στις μεθοδολογιες αυτοματοποιημενη εξερευνησης, παρουσιαζεται η μοντελοποιηση και η αναλυση σε βασικες συνιστωσες του χωρου σχεδιασης των δυναμικων διαχειριστων μνημης για πολυ-νηματικες εφαρμογες. προτεινονται νεοι αλγοριθμοι εξερευνησης και διασχισης του παραπανω χωρου σχεδιασης βασει μεθοδων ορθογωνιου διαχωρισμου των αποφασεων, που επιτρεπουν την πολυ-κριτηριακη εξειδικευση και την αυτοματοποιημενη παραγωγη λογισμικου των δυναμικων διαχειριστων μνημης. επιπλεον, προτεινεται μια νεα θεωρηση για την παραμετρικη μοντελοποιηση του χωρου σχεδιασης εξειδικευμενων συνεπεξεργαστων υλικου, η οποια λαμβανει υποψη τις επιδρασεις των σχεδιαστικων αποφασεων απο τα επιπεδα αφαιρεσης συμπεριφορας-αλγοριθμου και αρχιτεκτονικης, με στοχο τη συνδυασμενη βελτιστοποιηση της επιδοσης και της επιφανειας υλικου. νεοι αλγοριθμοι εξερευνησης αναπτυχθηκαν, ωστε να επιτυγχανεται γρηγορη αναζητηση με αποδοτικη συγκλιση στις καθολικα βελτιστες σχεδιαστικες λυσεις. σε οτι αφορα στις μεθοδολογιες αρχιτεκτονικης συνθεσης επαναδιαταξιμων συνεπεξεργαστων υλικου, παρουσιαζεται η τεχνικη εισαγωγη ευελιξιας για κυκλωματικη σχεδιαση επαναδιαταξιμων αρχιτεκτονικων αδρομερους υφης. η προτεινομενη τεχνικη εκμεταλλευεται την κατοπτρικη συμμετρια στις διασυνδεσεις εξειδικευμενων (μη-επαναδιαταξιμων) αριθμητικων κυκλωματων και μεσω καταλληλων μετασχηματισμων, επιτυγχανει τη σχεδιαση ενος νεου επαναδιαταξιμου μικρο-αρχιτεκτονικου προτυπου, το οποιο συνδυαζει τον οριζοντιο και καθετο παραλληλισμο με δυνατοτητες υπολογιστικης αλυσιδωσης λειτουργιων. επιπροσθετως, προτεινεται και μια δευτερη επαναδιαταξιμη αρχιτεκτονικη συνεπεξεργαστη, η οποια βασιζεται στη χρηση μεθοδων αριθμητικης βελτιστοποιησης για σχεδιαση ευελικτων συνεπεξεργαστων με αλυσιδωση λειτουργιων. για καθε επαναδιαταξιμο συνεπεξεργαστη αναπτυχθηκαν νεοι αλγοριθμοι σχεδιασης για αυτοματοποιημενη απεικονιση εφαρμογων στις προτεινομενες αρχιτεκτονικες. η μελετη της αποδοτικοτητας των προτεινομενων μεθοδολογιων πραγματοποιηθηκε μεσω εκτενων πειραματικων αξιολογησεων και συγκρισεων με τις αντιστοιχες σχεδιαστικες λυσεις αιχμης. σε καθε περιπτωση, διαπιστωνεται πως η υιοθετηση των μεθοδολογιων που αναπτυχθηκαν στην παρουσα διατριβη, οδηγει σε σημαντικη μετατοπιση των σχεδιαστικων λυσεων προς πιο αποδοτικες υλοποιησεις.τechnological advances in micro-electronics, enabled the development of complex embedded computing devices, i.e. mobile phones, digital cameras, etc., which dominate the modern everyday life. such type of systems usually executes a large but specific set of applications, which combine highly dynamic behaviour together with high demands in computing power. the designers have to deal with the increased system complexity, in order to provide design solutions that satisfy a set of stringent functional and financial constraints. today, it is broadly accepted that without the use of automated tools to optimize the hardware and software system's coefficients, designers are led to the adoption of sub-optimal design solutions. this thesis addresses the above problem by developing a set of methodologies for efficient design space exploration and architectural synthesis for digital signal processing coprocessors. specifically, the proposed techniques target to (i) the development of customized software solutions for dynamic memory management of multi-threaded applications and (ii) the design of efficient customized and reconfigurable coprocessor architectures. regarding to the automated design space exploration methodologies, we model and analyze the basic building blocks of multi-threaded dynamic memory management for multi-core platforms with shared memory. we propose new algorithms for exploring and traversing the defined parameter space based on constrained orthogonal design space partitioning, which enables multi-objective optimization and automated code generation of application specific dynamic memory management. in addition, we propose a new approach for defining an extended design space for hardware coprocessor synthesis, which takes into account the combined impact of behavioral-algorithmic and architectural level parameters. new exploration algorithms are developed to enable fast and efficient exploration that converges to more globally optimal design solutions. regarding to the architectural synthesis of reconfigurable coprocessors, we introduce the flexibility inlining technique for designing coarse-grained reconfigurable architectures at the circuit level. the proposed technique exploits the mirror symmetry found in asic implementations of arithmetic circuits and through appropriate rtl transformations achieves the design of a new reconfigurable micro-architectural template that exploits in a combined manner the architectural optimizations of horizontal parallelism, vertical parallel and operation chaining. in addition, we present a second micro-architectural template that use advanced arithmetic optimization techniques for designing flexible coprocessor datapaths. each of the aforementioned reconfigurable architectures is complemented with new high-level synthesis algorithms in order to enable automated mapping of applications onto the introduced datapaths. we study the effectiveness of the proposed methodologies through multiple and extensive experimental evaluations of the proposed solutions in comparison with state-of-the-art design solutions. in any case, it seems that the adoption of the proposed methodologies leads to a significant shift of the design solutions towards more efficient implementations.Σωτήριος Γ. Ξύδη
Voltage island management in near threshold manycore architectures to mitigate dark silicon
The power-wall problem driven by the stagnation of supply voltages in deep-submicron technology nodes, is now the major scaling barrier for moving towards the manycore era. Although the technology scaling enables extreme volumes of computational power, power budget violations will permit only a limited portion to be actually exploited, leading to the so called dark silicon. Near-Threshold voltage Computing (NTC) has emerged as a promising approach to overcome the manycore power-wall, at the expenses of reduced performance values and higher sensitivity to process variations. Given that several application domains operate over specific performance constraints, the performance sustainability is considered a major issue for the wide adoption of NTC. Thus, in this paper, we investigate how performance guarantees can be ensured when moving towards NTC manycores through variability-aware voltage and frequency allocation schemes. We propose three aggressive NTC voltage tuning and allocation strategies, showing that STC performance can be efficiently sustained or even optimized at the NTC regime. Finally, we show that NTC highly depends on the underlying workload characteristics, delivering average power gains of 65% for thread-parallel workloads and up to 90% for process-parallel workloads, while offering an extensive analysis on the effects of different voltage tuning/allocation strategies and voltage regulator configurations
Variability-Aware Voltage Island Management for Near-Threshold Computing with Performance Guarantees
The power-wall problem driven by the stagnation of supply voltages in deep-submicron technology nodes, is now the major scaling barrier for moving towards the manycore era. Although the technology scaling enables extreme volumes of computational power, power budget violations will permit only a limited portion to be actually exploited, leading to the so called dark silicon. Near-Threshold voltage Computing (NTC) has emerged as a promising approach to overcome the manycore power-wall, at the expenses of reduced performance values and higher sensitivity to process variations. Given that several application domains operate over specific performance constraints, the performance sustainability is considered a major issue for the wide adoption of NTC. Thus, in this chapter, we investigate how performance guarantees can be ensured when moving towards NTC manycores through variability-aware voltage and frequency allocation schemes. We propose three aggressive NTC voltage tuning and allocation strategies, showing that performance can be efficiently sustained or even optimized at the NTC regime. Finally, we show that NTC highly depends on the underlying workload characteristics, delivering average power gains of 65 % for thread-parallel workloads and up to 90 % for process-parallel workloads, while offering an extensive analysis on the effects of different voltage tuning/allocation strategies and voltage regulator configurations
Ein kvalitativ studie av vernefaktorar hos barn av alkoholmisbrukerar
Dette forskingsprosjektet er ein kvalitativ studie som tek utgangspunkt i eit semistrukturert intervju av fem unge kvinner som har hatt ei relativ positiv utvikling til tross for ein oppvekst prega av alkoholmisbruk hos éin av foreldra. Dei fortel om kva faktorar som har hatt betydning for deira relative positive utvikling. Studien har ein hermeneutisk tilnærming med ei delvis teoristyrt innhaldsanalyse inspirert av Hsieh og Shannon (2005). Formålet ved prosjektet er å få auka kunnskap kring kva vernefaktorar som kan føre til ei relativt positiv utvikling hos barn av alkoholmisbrukarar, og slik også kunne auke kunnskapen kring kva lærarar kan gjere for å fremme resiliens hos desse barna. Eg har difor prøvd å finne kva vernefaktorar som har hatt betydning for informantane si positive utvikling, med fokus på vernefaktorar som kan påverkast i skulen. Problemstillinga som undersøkast er difor: «Kva slags vernefaktorar har hatt betydning for ei relativt positiv utvikling hos personar som har vakse opp med alkoholmisbrukande foreldre?» I analysen av datamaterialet var hovudkategoriane: individuelle vernefaktorar og betydninga av gode relasjonar deduktivt utforma frå Olsen og Traavik (2010) si bok «Resiliens i skolen», og annan teori om resiliens. Resultata i studien viser at dei individuelle vernefaktorane: ei positiv sjølvoppfatning og mesitringsdugleikar, å vere agent i eige liv, eit sjølvbeskyttande attribusjonsmønster og hensiktsmessige stressmeistringsstrategiar, er individuelle vernefaktorar som har hatt betydning for ei relativt positiv utvikling hos personar som har vakse opp med alkoholmisbrukande foreldre. I tillegg vil gode relasjonar til læraren og jamnaldrande virke vernande. Eit viktig punkt er at dei individuelle vernefaktorane og vernefaktorane i miljøet ser ut til å påverke kvarandre, og at dei i varierande grad har vore til stade i oppveksten til informantane. Ein må difor sjå på dei individuelle vernefaktorane opp mot det komplekse samspelet med miljøet, og som faktorar som utviklar seg i takt med individuelle og sosiale forandringar. Funna mine kan også tyde på at den relativt positive utvikling skyldast resiliens, og at vernefaktorane har hatt betydning for den relative positive utviklinga. Disse funna drøftast opp mot tidlegare forsking og teori på feltet