SlideShare una empresa de Scribd logo
1 de 17
The Address Trace Compressor uses
two methods for compression:

  Lossy compression
  (based on concept of phase)

  Lossless compression(bytesort)




  Simplicity


  Speed                             Traces can hog some
                                    memory
                                    Therefore, trace
                                    compression saves
  Memory efficiency
                                    space !!
What exactly does ATC do…??



•Generates compact address traces..

•The traces that
ATC takes as input have the
simplest format that an
address
trace can have : they are
just sequences of 64-bit
values.
Lossless compression techniques:


Mache lossless compression:
The original trace is transformed by replacing     Reversible.!!
the full address with the difference between the
address and
the previous address having the same label.
Continued..
                                                           Address sequence is easier to
The bytesort way of ATC:                                   compress with byte level
                                                           compressor, if bytes are
                                                           unshuffled.




           8 byte        8 byte         8 byte
           address       address        address
                                                    ………….. N such address blocks.


         N bytes         N bytes         N bytes
                                                                 OUTPUT….!!
                                                      ……….8 such blocks.



1st byte of each block     2nd byte of each block
This is how bytesort uses
unshuffling….
Consider an example of 384 16 bit address:

F200,F201,A100,F202,F203,A101,F204,F205,A1
02,...,F2FE,
F2FF,A17F. Byte unshuffling gives
F2,F2,A1,F2,F2,A1,...,F2,
F2,A1|00,01,00,02,03,01,...,FE,FF,7F
The second block looks irregular
To expose more regularity in the second block,
sort the addresses according to their high-order byte before outputting the second block.
After sorting according to the high-order byte, the address sequence becomes:
A100,A101,...,A17F,F200,F201,F202,...,F2FF
and the unshuffled low-order byte block is
00,01,...,7F,00,01,02,...,FF. Overall, the transformed trace
is F2,F2,A1,F2,F2,A1,...,F2,F2,A1|00,01,...,7F,00,01,02,...,FF.
The second block is now more regular because the sequence
00,01,...,7F repeats twice.
Pragmatically..,
The filtering is done with a level-1 instruction
cache and a
level-1 data cache.
The filtered
address sequence contains missing
instruction and data
block addresses in sequential order.
For compressing traces, we use the bzip2
compressor
We measure for each compressed
trace the average number of bits per
address (BPA).
The smaller the BPA, the higher the
compression ratio.
Total memory space taken by trace= mean of
BPAs x number of traces
Comparison :



120                                                Overall, the small bytesort and
                                                   the
100                                                big bytesort are respectively
                                                   40% and 26% faster than
80                                                 TCgen.
                                                   We also measured the
60                                                 contribution of bzip2 to the
                                                   decompression
40                                                 time and found that bzip2
                                                   contributes about 50% of the
20                                                 decompression time for TCgen
                                                   and almost 65% for bytesort.
 0
      TC gen   bigbytesort smallbytesort   bzip2
Lossy compression:
Even with a very effective lossless compression             For an image, lossy compression is
method,                                                     acceptable
some address traces are inherently difficult to             provided the compressed image
compress, e.g.,                                             looks like the original
because the address sequence looks random. To               image. This is achieved by
make these                                                  removing the details that the
traces significantly more compact, some form of             eye cannot see or that the brain
lossy compression                                           ignores
is necessary.
If there are N different addresses &                              Sorted byte-histograms permit
if we partition the trace into intervals                          detecting when two intervals A
Ii consisting of L consecutive addresses each, and if L is much   and B
larger than N, all intervals look alike and a single interval     are likely to have similar
can                                                               temporal structures and provide
be used to characterize the whole trace. In other words, we       a way
replace the original trace I1, I2, I3, ・ ・ ・ , Ik with a          to transform addresses of A so as
compressed                                                        to imitate the spatiotemporal
trace I1, I1, I1, ・ ・ ・ , I1. The new trace is more compact       structure of B.
because
we can represent the trace as a sequence of interval IDs
Let us consider an interval of L consecutive 64-bit addresses
A(k) with k ∈ [1, L]. Each address A(k) is coded with eight
bytes b[j](k) ∈ [0, 255] :
A(k) =
7                                                                  Distance D between
∑ b[j](k) × 28×j                                                   intervals A & B is
J=0                                                                D(A,B) = max
                                                                   j∈[0,7]
We define the byte-histograms as follows :                         d(h’A *j+, h’ B[j])
for j ∈ [0, 7] and i ∈ [0, 255], h[j](i) =
                                                                   …….(2)
L
∑ δi(b[j](k))
K=1
Where δi(x) = 1 if x = i
                     0 if x = i

In other words, the byte-histogram value h[j](i) is the number
of addresses in the interval whose byte of order j is equal to i
(note that

255
∑ h[j](i) = L).
i=0
For a given j, the sorted byte histogram
h[j] is obtained from h[j] by sorting the 256 values
h[j](i) in decreasing order. That is,
H’[j](i) = h[j](p[j](i)) ……(1)
The compressed trace consists of a set of chunks                   We only record in
and an interval trace. A chunk is an interval of the               the interval trace the fact
original trace                                                     that interval 1 can be used
                                                                   to imitate
that we compress with a lossless compression scheme.
                                                                   interval 2, along with the
(all chunks are compressed with the bytesort method)
                                                                   byte translations t[j]
The interval trace is compressed with bzip2. Each time we          (translations are
create a chunk, we record an entry for it in a histogram table     completely described with 8
in memory, where we store the histograms for that chunk.           × 256 bytes). Then we
When the table is full, we evict the entry belonging to the oldest compute
chunk. We always create a chunk for the first interval in a trace. the distance between the
At the end of the first interval, we compute the histograms for    third interval and the
the interval and we store them in the histogram table.             previous chunks.
Then we                                                            And so on. When several
compute the histograms for the second interval and we compute chunks match the current
the distance between intervals 1 and 2 using formula (2). If the   interval, we
distance is greater than the threshold, we create a chunk for the imitate the interval using the
second interval and we store the histograms of the second interval chunk having the smallest
in the histogram table. Otherwise, if the distance is less         distance
than the threshold, we do not create a chunk.                      with the interval. The fewer
                                                                   chunks are created, the
                                                                   more
                                                                   compact the trace
THE
COMPRESSION RATIO ACHIEVED WITH LOSSY
COMPRESSION DEPENDS ON THE TRACE
LENGTH AND ON THE TRACE
CHARACTERISTICS.




   WITHOUT COMPRESSION, WE WOULD NEED 4
   TERABYTES
   OF DISK SPACE TO STORE THE TRACES. WITH
   LOSSY COMPRESSION, THE
   22 TRACES TAKE ONLY 9 GIGABYTES OF DISK
   SPACE.
The ATC compressor is written in C. It
consists basically
of 4 functions, atc open, atc close, atc
code and atc decode.
In the program of Figure 6, the atc open function is
called with argument ’k’ which means lossy compression. For
lossless compression, the argument would be ’c’. The atc open
function creates a directory, whose name is given by the
argument
dirname, in which the compressed trace will be stored.
The argument bz2 means that we want compressed chunks to
have the suffix .bz2 and the last argument is the command that
is used to compress bytesorted chunks. On this example, we
use bzip2, but we could use another compressor, like gzip. After
the compressed trace has been opened with atc open, the
compression is done by calling atc code for each 64-bit input
value. An example program for decompressing traces is shown
in Figure 7. Here, the atc open function is called with the
argument
’d’ (decompression). The last argument is the command
for decompressing bytesorted chunks.

Más contenido relacionado

La actualidad más candente

A Quest for Subexponential Time Parameterized Algorithms for Planar-k-Path: F...
A Quest for Subexponential Time Parameterized Algorithms for Planar-k-Path: F...A Quest for Subexponential Time Parameterized Algorithms for Planar-k-Path: F...
A Quest for Subexponential Time Parameterized Algorithms for Planar-k-Path: F...cseiitgn
 
06 ds and algorithm session_08
06 ds and algorithm session_0806 ds and algorithm session_08
06 ds and algorithm session_08Niit Care
 
RNN and sequence-to-sequence processing
RNN and sequence-to-sequence processingRNN and sequence-to-sequence processing
RNN and sequence-to-sequence processingDongang (Sean) Wang
 
A study on_contrast_and_comparison_between_bellman-ford_algorithm_and_dijkstr...
A study on_contrast_and_comparison_between_bellman-ford_algorithm_and_dijkstr...A study on_contrast_and_comparison_between_bellman-ford_algorithm_and_dijkstr...
A study on_contrast_and_comparison_between_bellman-ford_algorithm_and_dijkstr...Khoa Mac Tu
 
A simple and fast exact clustering algorithm defined for complex
A simple and fast exact clustering algorithm defined for complexA simple and fast exact clustering algorithm defined for complex
A simple and fast exact clustering algorithm defined for complexAlexander Decker
 
Vectorized VByte Decoding
Vectorized VByte DecodingVectorized VByte Decoding
Vectorized VByte Decodingindeedeng
 
Lec2&3 data structure
Lec2&3 data structureLec2&3 data structure
Lec2&3 data structureSaad Gabr
 
International Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentInternational Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentIJERD Editor
 

La actualidad más candente (16)

A Quest for Subexponential Time Parameterized Algorithms for Planar-k-Path: F...
A Quest for Subexponential Time Parameterized Algorithms for Planar-k-Path: F...A Quest for Subexponential Time Parameterized Algorithms for Planar-k-Path: F...
A Quest for Subexponential Time Parameterized Algorithms for Planar-k-Path: F...
 
Cpsc125 ch6sec3
Cpsc125 ch6sec3Cpsc125 ch6sec3
Cpsc125 ch6sec3
 
06 ds and algorithm session_08
06 ds and algorithm session_0806 ds and algorithm session_08
06 ds and algorithm session_08
 
1 6
1 61 6
1 6
 
RNN and sequence-to-sequence processing
RNN and sequence-to-sequence processingRNN and sequence-to-sequence processing
RNN and sequence-to-sequence processing
 
A study on_contrast_and_comparison_between_bellman-ford_algorithm_and_dijkstr...
A study on_contrast_and_comparison_between_bellman-ford_algorithm_and_dijkstr...A study on_contrast_and_comparison_between_bellman-ford_algorithm_and_dijkstr...
A study on_contrast_and_comparison_between_bellman-ford_algorithm_and_dijkstr...
 
J0535964
J0535964J0535964
J0535964
 
A simple and fast exact clustering algorithm defined for complex
A simple and fast exact clustering algorithm defined for complexA simple and fast exact clustering algorithm defined for complex
A simple and fast exact clustering algorithm defined for complex
 
[PPT]
[PPT][PPT]
[PPT]
 
Quantum Noise and Error Correction
Quantum Noise and Error CorrectionQuantum Noise and Error Correction
Quantum Noise and Error Correction
 
Vectorized VByte Decoding
Vectorized VByte DecodingVectorized VByte Decoding
Vectorized VByte Decoding
 
Lec2
Lec2Lec2
Lec2
 
Lec2&3_DataStructure
Lec2&3_DataStructureLec2&3_DataStructure
Lec2&3_DataStructure
 
Lec2&3 data structure
Lec2&3 data structureLec2&3 data structure
Lec2&3 data structure
 
International Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentInternational Journal of Engineering Research and Development
International Journal of Engineering Research and Development
 
Unequal-Cost Prefix-Free Codes
Unequal-Cost Prefix-Free CodesUnequal-Cost Prefix-Free Codes
Unequal-Cost Prefix-Free Codes
 

Destacado

Soalan Geografi Percubaan PMR 2011 - Perak
Soalan Geografi Percubaan PMR 2011 - PerakSoalan Geografi Percubaan PMR 2011 - Perak
Soalan Geografi Percubaan PMR 2011 - PerakAnis Arifeen
 
Healthcare Reform Presentation De Laine Revised2
Healthcare Reform Presentation De Laine Revised2Healthcare Reform Presentation De Laine Revised2
Healthcare Reform Presentation De Laine Revised2Theresa DeLaine
 
Soalan Pendidikan Islam Percubaan PMR 2011 - Perak
Soalan Pendidikan Islam Percubaan PMR 2011 - PerakSoalan Pendidikan Islam Percubaan PMR 2011 - Perak
Soalan Pendidikan Islam Percubaan PMR 2011 - PerakAnis Arifeen
 
A bonsai tortenete2 javított
A bonsai tortenete2 javítottA bonsai tortenete2 javított
A bonsai tortenete2 javítottrobertjozsa
 

Destacado (8)

Goal Setting
Goal SettingGoal Setting
Goal Setting
 
Soalan Geografi Percubaan PMR 2011 - Perak
Soalan Geografi Percubaan PMR 2011 - PerakSoalan Geografi Percubaan PMR 2011 - Perak
Soalan Geografi Percubaan PMR 2011 - Perak
 
Healthcare Reform Presentation De Laine Revised2
Healthcare Reform Presentation De Laine Revised2Healthcare Reform Presentation De Laine Revised2
Healthcare Reform Presentation De Laine Revised2
 
Xml andweb services
Xml andweb services Xml andweb services
Xml andweb services
 
Espn deportes
Espn deportesEspn deportes
Espn deportes
 
Gliffy
GliffyGliffy
Gliffy
 
Soalan Pendidikan Islam Percubaan PMR 2011 - Perak
Soalan Pendidikan Islam Percubaan PMR 2011 - PerakSoalan Pendidikan Islam Percubaan PMR 2011 - Perak
Soalan Pendidikan Islam Percubaan PMR 2011 - Perak
 
A bonsai tortenete2 javított
A bonsai tortenete2 javítottA bonsai tortenete2 javított
A bonsai tortenete2 javított
 

Similar a Atc..

COMMON SCRAMBLING ALGORITHM
COMMON SCRAMBLING ALGORITHMCOMMON SCRAMBLING ALGORITHM
COMMON SCRAMBLING ALGORITHMAniruddh Tyagi
 
COMMON SCRAMBLING ALGORITHM
COMMON SCRAMBLING ALGORITHMCOMMON SCRAMBLING ALGORITHM
COMMON SCRAMBLING ALGORITHManiruddh Tyagi
 
COMMON SCRAMBLING ALGORITHM
COMMON SCRAMBLING ALGORITHMCOMMON SCRAMBLING ALGORITHM
COMMON SCRAMBLING ALGORITHManiruddh Tyagi
 
MDCT audio coding with pulse vector quantizers
MDCT audio coding with pulse vector quantizersMDCT audio coding with pulse vector quantizers
MDCT audio coding with pulse vector quantizersEricsson
 
Advance computer architecture
Advance computer architectureAdvance computer architecture
Advance computer architecturesuma1991
 
Faster Practical Block Compression for Rank/Select Dictionaries
Faster Practical Block Compression for Rank/Select DictionariesFaster Practical Block Compression for Rank/Select Dictionaries
Faster Practical Block Compression for Rank/Select DictionariesRakuten Group, Inc.
 
Aes128 bit project_report
Aes128 bit project_reportAes128 bit project_report
Aes128 bit project_reportNikhil Gupta
 
image compression in data compression
image compression in data compressionimage compression in data compression
image compression in data compressionZaabir Ali
 
The Koch Snowflake SELF SIMILAR CONCEPTS
The Koch Snowflake SELF SIMILAR CONCEPTSThe Koch Snowflake SELF SIMILAR CONCEPTS
The Koch Snowflake SELF SIMILAR CONCEPTSJauwadSyed
 
Cassandra Compression and Performance Evaluation
Cassandra Compression and Performance EvaluationCassandra Compression and Performance Evaluation
Cassandra Compression and Performance EvaluationSchubert Zhang
 
Register allocation and assignment
Register allocation and assignmentRegister allocation and assignment
Register allocation and assignmentKarthi Keyan
 

Similar a Atc.. (20)

Er24902905
Er24902905Er24902905
Er24902905
 
Compression ii
Compression iiCompression ii
Compression ii
 
Compression Ii
Compression IiCompression Ii
Compression Ii
 
Compression Ii
Compression IiCompression Ii
Compression Ii
 
COMMON SCRAMBLING ALGORITHM
COMMON SCRAMBLING ALGORITHMCOMMON SCRAMBLING ALGORITHM
COMMON SCRAMBLING ALGORITHM
 
COMMON SCRAMBLING ALGORITHM
COMMON SCRAMBLING ALGORITHMCOMMON SCRAMBLING ALGORITHM
COMMON SCRAMBLING ALGORITHM
 
COMMON SCRAMBLING ALGORITHM
COMMON SCRAMBLING ALGORITHMCOMMON SCRAMBLING ALGORITHM
COMMON SCRAMBLING ALGORITHM
 
Ch07 linearspacealignment
Ch07 linearspacealignmentCh07 linearspacealignment
Ch07 linearspacealignment
 
MDCT audio coding with pulse vector quantizers
MDCT audio coding with pulse vector quantizersMDCT audio coding with pulse vector quantizers
MDCT audio coding with pulse vector quantizers
 
Advance computer architecture
Advance computer architectureAdvance computer architecture
Advance computer architecture
 
1 1 number theory
1 1 number theory1 1 number theory
1 1 number theory
 
Bigdata analytics
Bigdata analyticsBigdata analytics
Bigdata analytics
 
Faster Practical Block Compression for Rank/Select Dictionaries
Faster Practical Block Compression for Rank/Select DictionariesFaster Practical Block Compression for Rank/Select Dictionaries
Faster Practical Block Compression for Rank/Select Dictionaries
 
Bsdconv
BsdconvBsdconv
Bsdconv
 
Ch9b
Ch9bCh9b
Ch9b
 
Aes128 bit project_report
Aes128 bit project_reportAes128 bit project_report
Aes128 bit project_report
 
image compression in data compression
image compression in data compressionimage compression in data compression
image compression in data compression
 
The Koch Snowflake SELF SIMILAR CONCEPTS
The Koch Snowflake SELF SIMILAR CONCEPTSThe Koch Snowflake SELF SIMILAR CONCEPTS
The Koch Snowflake SELF SIMILAR CONCEPTS
 
Cassandra Compression and Performance Evaluation
Cassandra Compression and Performance EvaluationCassandra Compression and Performance Evaluation
Cassandra Compression and Performance Evaluation
 
Register allocation and assignment
Register allocation and assignmentRegister allocation and assignment
Register allocation and assignment
 

Último

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
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
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
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
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 

Último (20)

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
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
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
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
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 

Atc..

  • 1.
  • 2.
  • 3. The Address Trace Compressor uses two methods for compression: Lossy compression (based on concept of phase) Lossless compression(bytesort) Simplicity Speed Traces can hog some memory Therefore, trace compression saves Memory efficiency space !!
  • 4. What exactly does ATC do…?? •Generates compact address traces.. •The traces that ATC takes as input have the simplest format that an address trace can have : they are just sequences of 64-bit values.
  • 5. Lossless compression techniques: Mache lossless compression: The original trace is transformed by replacing Reversible.!! the full address with the difference between the address and the previous address having the same label.
  • 6. Continued.. Address sequence is easier to The bytesort way of ATC: compress with byte level compressor, if bytes are unshuffled. 8 byte 8 byte 8 byte address address address ………….. N such address blocks. N bytes N bytes N bytes OUTPUT….!! ……….8 such blocks. 1st byte of each block 2nd byte of each block
  • 7.
  • 8. This is how bytesort uses unshuffling…. Consider an example of 384 16 bit address: F200,F201,A100,F202,F203,A101,F204,F205,A1 02,...,F2FE, F2FF,A17F. Byte unshuffling gives F2,F2,A1,F2,F2,A1,...,F2, F2,A1|00,01,00,02,03,01,...,FE,FF,7F The second block looks irregular To expose more regularity in the second block, sort the addresses according to their high-order byte before outputting the second block. After sorting according to the high-order byte, the address sequence becomes: A100,A101,...,A17F,F200,F201,F202,...,F2FF and the unshuffled low-order byte block is 00,01,...,7F,00,01,02,...,FF. Overall, the transformed trace is F2,F2,A1,F2,F2,A1,...,F2,F2,A1|00,01,...,7F,00,01,02,...,FF. The second block is now more regular because the sequence 00,01,...,7F repeats twice.
  • 9. Pragmatically.., The filtering is done with a level-1 instruction cache and a level-1 data cache. The filtered address sequence contains missing instruction and data block addresses in sequential order. For compressing traces, we use the bzip2 compressor We measure for each compressed trace the average number of bits per address (BPA). The smaller the BPA, the higher the compression ratio. Total memory space taken by trace= mean of BPAs x number of traces
  • 10. Comparison : 120 Overall, the small bytesort and the 100 big bytesort are respectively 40% and 26% faster than 80 TCgen. We also measured the 60 contribution of bzip2 to the decompression 40 time and found that bzip2 contributes about 50% of the 20 decompression time for TCgen and almost 65% for bytesort. 0 TC gen bigbytesort smallbytesort bzip2
  • 11. Lossy compression: Even with a very effective lossless compression For an image, lossy compression is method, acceptable some address traces are inherently difficult to provided the compressed image compress, e.g., looks like the original because the address sequence looks random. To image. This is achieved by make these removing the details that the traces significantly more compact, some form of eye cannot see or that the brain lossy compression ignores is necessary. If there are N different addresses & Sorted byte-histograms permit if we partition the trace into intervals detecting when two intervals A Ii consisting of L consecutive addresses each, and if L is much and B larger than N, all intervals look alike and a single interval are likely to have similar can temporal structures and provide be used to characterize the whole trace. In other words, we a way replace the original trace I1, I2, I3, ・ ・ ・ , Ik with a to transform addresses of A so as compressed to imitate the spatiotemporal trace I1, I1, I1, ・ ・ ・ , I1. The new trace is more compact structure of B. because we can represent the trace as a sequence of interval IDs
  • 12. Let us consider an interval of L consecutive 64-bit addresses A(k) with k ∈ [1, L]. Each address A(k) is coded with eight bytes b[j](k) ∈ [0, 255] : A(k) = 7 Distance D between ∑ b[j](k) × 28×j intervals A & B is J=0 D(A,B) = max j∈[0,7] We define the byte-histograms as follows : d(h’A *j+, h’ B[j]) for j ∈ [0, 7] and i ∈ [0, 255], h[j](i) = …….(2) L ∑ δi(b[j](k)) K=1 Where δi(x) = 1 if x = i 0 if x = i In other words, the byte-histogram value h[j](i) is the number of addresses in the interval whose byte of order j is equal to i (note that 255 ∑ h[j](i) = L). i=0 For a given j, the sorted byte histogram h[j] is obtained from h[j] by sorting the 256 values h[j](i) in decreasing order. That is, H’[j](i) = h[j](p[j](i)) ……(1)
  • 13. The compressed trace consists of a set of chunks We only record in and an interval trace. A chunk is an interval of the the interval trace the fact original trace that interval 1 can be used to imitate that we compress with a lossless compression scheme. interval 2, along with the (all chunks are compressed with the bytesort method) byte translations t[j] The interval trace is compressed with bzip2. Each time we (translations are create a chunk, we record an entry for it in a histogram table completely described with 8 in memory, where we store the histograms for that chunk. × 256 bytes). Then we When the table is full, we evict the entry belonging to the oldest compute chunk. We always create a chunk for the first interval in a trace. the distance between the At the end of the first interval, we compute the histograms for third interval and the the interval and we store them in the histogram table. previous chunks. Then we And so on. When several compute the histograms for the second interval and we compute chunks match the current the distance between intervals 1 and 2 using formula (2). If the interval, we distance is greater than the threshold, we create a chunk for the imitate the interval using the second interval and we store the histograms of the second interval chunk having the smallest in the histogram table. Otherwise, if the distance is less distance than the threshold, we do not create a chunk. with the interval. The fewer chunks are created, the more compact the trace
  • 14. THE COMPRESSION RATIO ACHIEVED WITH LOSSY COMPRESSION DEPENDS ON THE TRACE LENGTH AND ON THE TRACE CHARACTERISTICS. WITHOUT COMPRESSION, WE WOULD NEED 4 TERABYTES OF DISK SPACE TO STORE THE TRACES. WITH LOSSY COMPRESSION, THE 22 TRACES TAKE ONLY 9 GIGABYTES OF DISK SPACE.
  • 15.
  • 16.
  • 17. The ATC compressor is written in C. It consists basically of 4 functions, atc open, atc close, atc code and atc decode. In the program of Figure 6, the atc open function is called with argument ’k’ which means lossy compression. For lossless compression, the argument would be ’c’. The atc open function creates a directory, whose name is given by the argument dirname, in which the compressed trace will be stored. The argument bz2 means that we want compressed chunks to have the suffix .bz2 and the last argument is the command that is used to compress bytesorted chunks. On this example, we use bzip2, but we could use another compressor, like gzip. After the compressed trace has been opened with atc open, the compression is done by calling atc code for each 64-bit input value. An example program for decompressing traces is shown in Figure 7. Here, the atc open function is called with the argument ’d’ (decompression). The last argument is the command for decompressing bytesorted chunks.