SlideShare una empresa de Scribd logo
1 de 49
GCC
Marvell Taiwan
Intern Wei-Sheng Chou
1
Outline
Chapter1 - Compiler
– Complication … P3
– GCC compiler … P12
Chapter2 - GCC Source Code
– Configuration & Building … P17
– Cross Compile GCC compiler … P21
Chapter3 - Gray box probing of GCC
– Gray box probing of GCC … P29
– Passes … P33
– Gimple Optimization … P46
Reference … P57
2
Chapter1
Complication
3
Binding
conceptualizing
Programming
Compile
linking
loading
Executing
Problem
Algorithm, Data Structure, Strategy
Function, Variable, Type、Control Flow
Instruction, Register
Function addressing, library
Code, Data addressing
Value of Variable
unbind
object
time
4
5
Problem
Algorithm, Data Structure, Strategy
Function, Variable, Type、Control Flow
Instruction, Register
Function addressing, library
Code, Data addressing
Value of Variable
unbind
object
time
Binding
conceptualizing
Programming
Compile
linking
loading
Executing
Interpreter VS Compiler
Source
Program
Input
Data
6
Interpreter Machine
Develop
Flexibility
Interpreter VS Compiler
Compiler
Target
Program
Machine
Source
Program
Input
Data
7
Executing
Speed
Model
Front-End
Optimizer
Code
Generator
AST
Ind. IR
Target
Program
Front-End
Expander
Optimizer
Recognizer
AST
Register Transfer
Register Transfer
Aho Ullman
Model
Davidson
Fraser Model
Machine & Optimizer
Independent
8
Machine & Optimizer
Dependent
Structure of Compiler
Front-End
Back-End
Parser
Scanner
Semantic Analyzer
Symbol table Handler
Source
Program
Instruction
Selector
Assembly
Emitter
Register Allocator
Assembly
Program
AST
9
Typical Front-End
Parser
Scanner Semantic Analyzer
Symbol table
Handler
Source
Program
AST
Parse Tree
Error
Handler
Token
AST / IR +
Symbol Table
10
Typical Back-End
Ind.
Optimizer
Code
Generator
Register Allocator
Assembly
Program
Instruction Scheduler
Peephole Optimizer
Ind. IR
Dep. IR
AST / IR +
Symbol Table
11
Assembly
Code
Generator
Chapter1
GCC
GNU Compiler Collection
Great Compiler Challenge
12
GCC
GCC compiler
GCC
Source
Program
Target
Program
13
CC1 CPP
AS
LD LIB
compiler
assembler
linker
C Preprocessor
GCC is a collection that invokes compiler, assembler and linker…
Static
dynamic
14
Parser
Source
Program
Assembly
Program
14
Architecture
Gimplifer
TreeSSA
Optimizer
Expander Optimizer Recoginer
Input
language
Target
name
Language &
Machine
Independent
Generic Code
Machine
Dependent
Generator
Code
Machine
Descriptions
Language
Specific
Code
15
Parser
Source
Program
Assembly
Program
15
Different Time
Gimplifer
TreeSSA
Optimizer
Expander Optimizer Recoginer
Input
language
Target
name
Language &
Machine
Independent
Generic Code
Machine
Dependent
Generator
Code
Machine
Descriptions
Language
Specific
Code
Develop
GCC
Time
Build
GCC
time
Use
GCC
time
Select Copy Copy Generate Generate
16
Parser
Source
Program
Assembly
Program
16
Different View
Gimplifer
TreeSSA
Optimizer
Expander Optimizer Recoginer
Input
language
Target
name
Language &
Machine
Independent
Generic Code
Machine
Dependent
Generator
Code
Machine
Descriptions
Language
Specific
Code
C or C++? Arm or x86?
Chapter2
GCC Source Code
Configuration & Building
17
Pre-requisites
• ISO C90
• GCC
• GNU Bash
• Awk
• bzip, gzip, untar
• GNU Make
18
Mpfr library
Mpc library
Ppl
C LooG-PPL
Jar
Libelf
GMP
https://gcc.gnu.org/install/prerequisites.html
Directory
• GCC Source – source code
– $(SOURCE_D)
• GCC Build – make source code
– $(BUILD)
• GCC Install – install binary file
– $(INSTALL)
19
*GCC will generate file in build time
Step
1. Build pre-requisites
2. --prefix = /usr/local
3. ldconfig
4. Build gcc
cd $(BUILD)
$(SOURCE_D)/configure
make; make install
20
=> #create makefile
=> #install path
=> #link library
Chapter3
Gray box probing of GCC
29
What is Gray box?
30
Black Box
Input
Output
What is Gray box?
31
Black Box
Input
Output
White Box
Input
Output
Obj
Obj
Obj
Obj Obj
Obj
Obj
Obj
What is Gray box?
32
Black Box
Input
Output
White Box
Input
Output
Gray Box
Input
Output
Obj
Obj
Obj
Obj Obj
Obj
Obj
Obj Obj
Obj
Obj
Chapter3
Passes
Examining Dumps
33
Passes
34
Parse Gimplify
TreeSSA
Optimize
Generate
RTL
RTL
Optimize
Generate
ASM
Target Ind. Target dep.
Gimple Passes
RTL -> ASM
RTL Passes
Gimple -> RTL
Command
• gcc -fdump-<stage>-<passname> <file>
– ex. gcc -fdump-tree-original test.c
– ex. gcc -fdump-tree-cfg-raw test.c
– ex. gcc -fdump-ipa-all test.c
– Stage:
• tree
• ipa
• rtl
35
Important passes
36
Parse
Gimplify
Source
Program
CFG Grammer
RTL Generator
Reg Allocator
pro_epilogue
generator
Pattern Matcher
ASM
Program
AST: 003t.original
GIMPLE: 004t.gimple
CFG: 013t.cfg
RTL expand: 144r.expand
IRA: 191r.ira
198r.prologue-and-
epilogue
Command Result
37
1. gcc -fdump-tree-original-raw test.c
Examples: AST dumps
test.c
38
int a;
main()
{
a = 55;
}
test.c.004t.gimple
2. gcc -fdump-tree-gimple test.c
test.c
Examples: GIMPLE dumps
39
int main()
{
int a[3], x;
a[1] = a[2] = 10;
x = a[1] + a[2];
a[0] = a[1] + a[1]*x;
}
main ()
{
int D.1589;
int D.1590;
int D.1591;
int D.1592;
int D.1593;
int D.1594;
int a[3];
int x;
a[2] = 10;
D.1589 = a[2];
a[1] = D.1589;
D.1590 = a[1];
D.1591 = a[2];
x = D.1590 + D.1591;
D.1592 = x + 1;
D.1593 = a[1];
D.1594 = D.1592 * D.1593;
a[0] = D.1594;
}
Examples: CFG dumps
3. gcc -fdump-tree-cfg test.c
40
test.c.004t.gimple (part)
if (a<=12) goto
<D.1200>
else goto <D.1201>
<D.1200>:
D.1199 = a + b;
a = D.1199 + c;
<D.1201>:
test.c (part)
If (a<=12)
a = a+b+c;
Examples: RTL dumps
4. gcc -fdump-rtl-expand test.c
42
test.c.144r.expand (part)
test.c
int a;
main()
{
a = a+1;
}
(insn 5 4 6 3 (set (reg:SI 59 [ a.0 ])
(mem/c/i:SI (symbol_ref:DI ("a") <var_decl
0x7f13bdac3000 a>) [0 a+0 S4
A32])) test.c:4 -1
(nil))
(insn 6 5 7 3 (parallel [
(set (reg:SI 60 [ a.1 ])
(plus:SI (reg:SI 59 [ a.0 ])
(const_int 1 [0x1])))
(clobber (reg:CC 17 flags))
]) test.c:4 -1
(nil))
(insn 7 6 13 3 (set (mem/c/i:SI (symbol_ref:DI ("a")
<var_decl 0x7f13bdac3000 a>) [0 a+0 S4 A32])
(reg:SI 60 [ a.1 ])) test.c:4 -1
(nil))
43
(insn 5 4 6 3 (set (reg:SI 59 [ a.0 ])
(mem/c/i:SI (symbol_ref:DI ("a")
<var_decl 0x7f13bdac3000 a>) [0 a+0 S4
A32])) test.c:4 -1
(nil))
(insn 6 5 7 3 (parallel [
(set (reg:SI 60 [ a.1 ])
(plus:SI (reg:SI 59 [ a.0 ])
(const_int 1 [0x1])))
(clobber (reg:CC 17 flags))
]) test.c:4 -1
(nil))
(insn 7 6 13 3 (set (mem/c/i:SI
(symbol_ref:DI ("a") <var_decl
0x7f13bdac3000 a>) [0 a+0 S4 A32])
(reg:SI 60 [ a.1 ])) test.c:4 -1
(nil))
r59 = a;
r60 = r59 + 1
a = r60
44
(insn 5 4 6 3 (set (reg:SI 59 [ a.0 ])
(mem/c/i:SI (symbol_ref:DI ("a")
<var_decl 0x7f13bdac3000 a>) [0 a+0 S4
A32])) test.c:4 -1
(nil))
(insn 6 5 7 3 (parallel [
(set (reg:SI 60 [ a.1 ])
(plus:SI (reg:SI 59 [ a.0 ])
(const_int 1 [0x1])))
(clobber (reg:CC 17 flags))
]) test.c:4 -1
(nil))
(insn 7 6 13 3 (set (mem/c/i:SI
(symbol_ref:DI ("a") <var_decl
0x7f13bdac3000 a>) [0 a+0 S4 A32])
(reg:SI 60 [ a.1 ])) test.c:4 -1
(nil))
Current Inst
Previous Inst
Next Inst
CFG: Basic Block
Single Integar
Register
Integer 1
Scalar
Memory reference
Examples: Assembly dumps
5. gcc -S test.c | | objdump -d a.out
45
test.s (part)test.c
main:
.LFB0:
.cfi_startproc
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
movq %rsp, %rbp
.cfi_def_cfa_register 6
movl $1, -4(%rbp)
popq %rbp
.cfi_def_cfa 7, 8
ret
.cfi_endproc
int main()
{
int a;
a=1;
}
test.c.144r.expand (part)
(insn 5 4 11 3 (set (mem/c/i:SI (plus:DI (reg/f:DI
54 virtual-stack-vars)
(const_int -4 [0xfffffffffffffffc])) [0 a+0
S4 A32])
(const_int 1 [0x1])) test.c:4 -1
(nil))
Chapter3
Gimple Optimization
46
Passes
47
Parse Gimplify
TreeSSA
Optimize
Generate
RTL
RTL
Optimize
Generate
ASM
Target Ind. Target dep.
Gimple Passes
RTL -> ASM
RTL Passes
Gimple -> RTL
Brief
0. Pre-procedure (017t.ssa) (022t.copyrename1)
1. constant propagation (023t.ccp1) (059t.ccp2)
2. copy propagation (027t.copyprop1)
3. loop unrolling (058t.cunrolli)
4. dead code elimination (029t.cddce1)
Command:
gcc -fdump-tree-all -O2 test.c
48
Source Code
int main()
{
int a=1;
int b=2;
int c=3;
int n=c*2;
while (a<=n)
a = a+1;
if (a<12)
a = a+b+c;
return a;
}
49
cfg (Control Flow Graph)
50
a=1 b=2
c=3 n=c*2
B2
If a<=n
B4
If a<12
B5
If a<12
B3
D.1200 = a+b
a=D.1200+c
B6
D.1201=a
return D.1201
B7
T
T
F
F
cfg -> ssa (017t.ssa)
51
a_3=1 b_4=2
c_5=3 n_6=c_5*2
B2
a_1=phi(a_3, a_7)
If a_1<=n_6B4
If a_1<12
B5
If a_7<12
B3
D.1200_8 = a_1+b_4
a_9=D.1200_8+c_5
B6
a_2 = phi(a_1, a_9)
D.1201_10=a_2
return D.1201_10
B7
T
T
F
F
ssa -> copyrename (022t)
<bb 7>:
#a_2 = PHI<a_1(5),a_9(6)>
D.1201_10=a_2;
return D.1201_10;
<bb 7>:
#a_2 = PHI<a_1(5),a_9(6)>
a_10=a_2;
return a_10;
52
017t.ssa
022t.copyrename1
copyrename -> ccp (023t)
<bb 2>
a_3=1;
b_4=2;
c_5=3;
n_6=c_5*2;
goto <bb 4>
<bb 2>
a_3=1;
b_4=2;
c_5=3;
n_6=6;
goto <bb 4>
53
022t.copyrename1
023t.ccp1
ccp -> copyprop (027t)
<bb 7>:
#a_2 = PHI<a_1(5),a_9(6)>
a_10=a_2;
return a_10;
<bb 7>:
#a_2 = PHI<a_1(5),a_9(6)>
return a_2;
54
023t.ccp1
027t.copyprop1
copyprop -> cddc (029t)
55
029t.cddc
<bb 2>:
a_3 = 1;
b_4 = 2;
c_5 = 3;
n_6 = 6;
goto <bb 4>;
<bb 3>:
a_7 = a_1 + 1;
<bb 4>:
…
<bb 2>:
goto <bb 4>;
<bb 3>:
a_7 = a_1 + 1;
<bb 4>:
…
029t.cddc
cddc ->cunrolli (058t)
56
<bb 2>:
goto <bb 4>;
<bb 3>:
a_7 = a_1 + 1;
<bb 4>:
# a_1 = PHI <1(2), a 7(3)>
if (a_1 <= 6) goto <bb 3>;
else goto <bb 5>;
<bb 5>:
if (a_1 <= 11) goto <bb 6>;
else goto <bb 7>;
<bb 6>:
a_9 = a_1 + 5;
<bb 7>:
# a_2 = PHI <a_1(5), a_9(6)>
return a_2;
a=1
a=a+1
a=a+1
a=a+1
a=a+1
a=a+1
a=a+1
<bb 2>:
a_12 = 2;
a_14 = a_12 + 1;
a_16 = a_14 + 1;
a_18 = a_16 + 1;
a_20 = a_18 + 1;
a_22 = a_20 + 1;
if (a_22 <= 11) goto <bb 3>;
else goto <bb 4>;
<bb 3>:
a_9 = a_22 + 5;
<bb 4>:
# a_2 = PHI <a_22(2), a_9(3)>
return a_2;
029t.cddc
058t.cunrolli
cunrolli -> ccp2 (059t)
main()
{
<bb 2>:
return 12;
}
57
<bb 2>:
a_12 = 2;
a_14 = a_12 + 1;
a_16 = a_14 + 1;
a_18 = a_16 + 1;
a_20 = a_18 + 1;
a_22 = a_20 + 1;
if (a_22 <= 11) goto <bb 3>;
else goto <bb 4>;
<bb 3>:
a_9 = a_22 + 5;
<bb 4>:
# a_2 = PHI <a_22(2), a_9(3)>
return a_2;
058t.cunrolli
059t.ccp2
Reference
• GCC Source Code
– https://github.com/mirrors/gcc
• IITB GCC workshop OCW
– http://www.cse.iitb.ac.in/grc/index.php?page=
gcc-pldi14-tut
58

Más contenido relacionado

La actualidad más candente

Common language runtime clr
Common language runtime clrCommon language runtime clr
Common language runtime clrSanSan149
 
Arm device tree and linux device drivers
Arm device tree and linux device driversArm device tree and linux device drivers
Arm device tree and linux device driversHoucheng Lin
 
Compiler Construction Course - Introduction
Compiler Construction Course - IntroductionCompiler Construction Course - Introduction
Compiler Construction Course - IntroductionMuhammad Sanaullah
 
Fun with Lambdas: C++14 Style (part 1)
Fun with Lambdas: C++14 Style (part 1)Fun with Lambdas: C++14 Style (part 1)
Fun with Lambdas: C++14 Style (part 1)Sumant Tambe
 
Integrated Development Environments (IDE)
Integrated Development Environments (IDE) Integrated Development Environments (IDE)
Integrated Development Environments (IDE) SeanPereira2
 
compiler ppt on symbol table
 compiler ppt on symbol table compiler ppt on symbol table
compiler ppt on symbol tablenadarmispapaulraj
 
Compiler Construction | Lecture 1 | What is a compiler?
Compiler Construction | Lecture 1 | What is a compiler?Compiler Construction | Lecture 1 | What is a compiler?
Compiler Construction | Lecture 1 | What is a compiler?Eelco Visser
 
Dead Code Elimination
Dead Code EliminationDead Code Elimination
Dead Code EliminationSamiul Ehsan
 
systems programming lab programs in c
systems programming lab programs in csystems programming lab programs in c
systems programming lab programs in cMeghna Roy
 
Risc and cisc eugene clewlow
Risc and cisc   eugene clewlowRisc and cisc   eugene clewlow
Risc and cisc eugene clewlowkaran saini
 
Embedded system
Embedded systemEmbedded system
Embedded systemmangal das
 
The TCP/IP Stack in the Linux Kernel
The TCP/IP Stack in the Linux KernelThe TCP/IP Stack in the Linux Kernel
The TCP/IP Stack in the Linux KernelDivye Kapoor
 
Lecture 3 RE NFA DFA
Lecture 3   RE NFA DFA Lecture 3   RE NFA DFA
Lecture 3 RE NFA DFA Rebaz Najeeb
 
Intermediate code generation in Compiler Design
Intermediate code generation in Compiler DesignIntermediate code generation in Compiler Design
Intermediate code generation in Compiler DesignKuppusamy P
 
Introduction to CUDA
Introduction to CUDAIntroduction to CUDA
Introduction to CUDARaymond Tay
 

La actualidad más candente (20)

Common language runtime clr
Common language runtime clrCommon language runtime clr
Common language runtime clr
 
Introduction to Compiler design
Introduction to Compiler design Introduction to Compiler design
Introduction to Compiler design
 
Arm device tree and linux device drivers
Arm device tree and linux device driversArm device tree and linux device drivers
Arm device tree and linux device drivers
 
Compiler Construction Course - Introduction
Compiler Construction Course - IntroductionCompiler Construction Course - Introduction
Compiler Construction Course - Introduction
 
Fun with Lambdas: C++14 Style (part 1)
Fun with Lambdas: C++14 Style (part 1)Fun with Lambdas: C++14 Style (part 1)
Fun with Lambdas: C++14 Style (part 1)
 
Integrated Development Environments (IDE)
Integrated Development Environments (IDE) Integrated Development Environments (IDE)
Integrated Development Environments (IDE)
 
compiler ppt on symbol table
 compiler ppt on symbol table compiler ppt on symbol table
compiler ppt on symbol table
 
Code generation
Code generationCode generation
Code generation
 
Embedded Operating System - Linux
Embedded Operating System - LinuxEmbedded Operating System - Linux
Embedded Operating System - Linux
 
Input-Buffering
Input-BufferingInput-Buffering
Input-Buffering
 
Compiler Construction | Lecture 1 | What is a compiler?
Compiler Construction | Lecture 1 | What is a compiler?Compiler Construction | Lecture 1 | What is a compiler?
Compiler Construction | Lecture 1 | What is a compiler?
 
Dead Code Elimination
Dead Code EliminationDead Code Elimination
Dead Code Elimination
 
systems programming lab programs in c
systems programming lab programs in csystems programming lab programs in c
systems programming lab programs in c
 
Risc and cisc eugene clewlow
Risc and cisc   eugene clewlowRisc and cisc   eugene clewlow
Risc and cisc eugene clewlow
 
Embedded system
Embedded systemEmbedded system
Embedded system
 
The TCP/IP Stack in the Linux Kernel
The TCP/IP Stack in the Linux KernelThe TCP/IP Stack in the Linux Kernel
The TCP/IP Stack in the Linux Kernel
 
Lecture 3 RE NFA DFA
Lecture 3   RE NFA DFA Lecture 3   RE NFA DFA
Lecture 3 RE NFA DFA
 
Intermediate code generation in Compiler Design
Intermediate code generation in Compiler DesignIntermediate code generation in Compiler Design
Intermediate code generation in Compiler Design
 
Assembler
AssemblerAssembler
Assembler
 
Introduction to CUDA
Introduction to CUDAIntroduction to CUDA
Introduction to CUDA
 

Destacado

Arabian Gulf Countries
Arabian Gulf CountriesArabian Gulf Countries
Arabian Gulf CountriesSpeed Up
 
Gulf Cooperation Council
Gulf Cooperation CouncilGulf Cooperation Council
Gulf Cooperation CouncilShravya Reddy
 
Gulf countries Presentation
Gulf countries PresentationGulf countries Presentation
Gulf countries PresentationMaaz Aqeel
 
Importance of arab gulf location
Importance of arab gulf locationImportance of arab gulf location
Importance of arab gulf locationUsman Azhar
 
Gcc power point
Gcc power pointGcc power point
Gcc power pointPPrince3
 
GEM - GNU C Compiler Extensions Framework
GEM - GNU C Compiler Extensions FrameworkGEM - GNU C Compiler Extensions Framework
GEM - GNU C Compiler Extensions FrameworkAlexey Smirnov
 
NetBeans para Java, C, C++
NetBeans para Java, C, C++NetBeans para Java, C, C++
NetBeans para Java, C, C++Manuel Antonio
 
Introduction to Perl - Day 1
Introduction to Perl - Day 1Introduction to Perl - Day 1
Introduction to Perl - Day 1Dave Cross
 
GNU Compiler Collection - August 2005
GNU Compiler Collection - August 2005GNU Compiler Collection - August 2005
GNU Compiler Collection - August 2005Saleem Ansari
 
Principles of compiler design
Principles of compiler designPrinciples of compiler design
Principles of compiler designJanani Parthiban
 
GCC Compiler as a Performance Testing tool for C programs
GCC Compiler as a Performance Testing tool for C programsGCC Compiler as a Performance Testing tool for C programs
GCC Compiler as a Performance Testing tool for C programsDaniel Ilunga
 
Compiling Under Linux
Compiling Under LinuxCompiling Under Linux
Compiling Under LinuxPierreMASURE
 

Destacado (20)

Arabian Gulf Countries
Arabian Gulf CountriesArabian Gulf Countries
Arabian Gulf Countries
 
Gulf Cooperation Council
Gulf Cooperation CouncilGulf Cooperation Council
Gulf Cooperation Council
 
gcc
gccgcc
gcc
 
Gulf Cooperation Council (GCC)
Gulf Cooperation Council (GCC)Gulf Cooperation Council (GCC)
Gulf Cooperation Council (GCC)
 
Gulf countries Presentation
Gulf countries PresentationGulf countries Presentation
Gulf countries Presentation
 
Importance of arab gulf location
Importance of arab gulf locationImportance of arab gulf location
Importance of arab gulf location
 
Gcc power point
Gcc power pointGcc power point
Gcc power point
 
Gccgdb
GccgdbGccgdb
Gccgdb
 
MinGw Compiler
MinGw CompilerMinGw Compiler
MinGw Compiler
 
GEM - GNU C Compiler Extensions Framework
GEM - GNU C Compiler Extensions FrameworkGEM - GNU C Compiler Extensions Framework
GEM - GNU C Compiler Extensions Framework
 
G++ & GCC
G++ & GCCG++ & GCC
G++ & GCC
 
NetBeans para Java, C, C++
NetBeans para Java, C, C++NetBeans para Java, C, C++
NetBeans para Java, C, C++
 
C compilation process
C compilation processC compilation process
C compilation process
 
Introduction to Perl - Day 1
Introduction to Perl - Day 1Introduction to Perl - Day 1
Introduction to Perl - Day 1
 
GNU Compiler Collection - August 2005
GNU Compiler Collection - August 2005GNU Compiler Collection - August 2005
GNU Compiler Collection - August 2005
 
Principles of compiler design
Principles of compiler designPrinciples of compiler design
Principles of compiler design
 
GCC Compiler as a Performance Testing tool for C programs
GCC Compiler as a Performance Testing tool for C programsGCC Compiler as a Performance Testing tool for C programs
GCC Compiler as a Performance Testing tool for C programs
 
Gcc opt
Gcc optGcc opt
Gcc opt
 
Compiling Under Linux
Compiling Under LinuxCompiling Under Linux
Compiling Under Linux
 
HRM - PM in GCC
HRM - PM in GCCHRM - PM in GCC
HRM - PM in GCC
 

Similar a GCC

Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Data Provenance Support in...
Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Data Provenance Support in...Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Data Provenance Support in...
Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Data Provenance Support in...Data Con LA
 
Как работает LLVM бэкенд в C#. Егор Богатов ➠ CoreHard Autumn 2019
Как работает LLVM бэкенд в C#. Егор Богатов ➠ CoreHard Autumn 2019Как работает LLVM бэкенд в C#. Егор Богатов ➠ CoreHard Autumn 2019
Как работает LLVM бэкенд в C#. Егор Богатов ➠ CoreHard Autumn 2019corehard_by
 
Bytes in the Machine: Inside the CPython interpreter
Bytes in the Machine: Inside the CPython interpreterBytes in the Machine: Inside the CPython interpreter
Bytes in the Machine: Inside the CPython interpreterakaptur
 
Windbg랑 친해지기
Windbg랑 친해지기Windbg랑 친해지기
Windbg랑 친해지기Ji Hun Kim
 
Getting started cpp full
Getting started cpp   fullGetting started cpp   full
Getting started cpp fullVõ Hòa
 
Chapter Eight(3)
Chapter Eight(3)Chapter Eight(3)
Chapter Eight(3)bolovv
 
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrainsit-people
 
Pragmatic Optimization in Modern Programming - Demystifying the Compiler
Pragmatic Optimization in Modern Programming - Demystifying the CompilerPragmatic Optimization in Modern Programming - Demystifying the Compiler
Pragmatic Optimization in Modern Programming - Demystifying the CompilerMarina Kolpakova
 
The Nuts and Bolts of Kafka Streams---An Architectural Deep Dive
The Nuts and Bolts of Kafka Streams---An Architectural Deep DiveThe Nuts and Bolts of Kafka Streams---An Architectural Deep Dive
The Nuts and Bolts of Kafka Streams---An Architectural Deep DiveHostedbyConfluent
 
不深不淺,帶你認識 LLVM (Found LLVM in your life)
不深不淺,帶你認識 LLVM (Found LLVM in your life)不深不淺,帶你認識 LLVM (Found LLVM in your life)
不深不淺,帶你認識 LLVM (Found LLVM in your life)Douglas Chen
 
Sample Exam Questions on Python for revision
Sample Exam Questions on Python for revisionSample Exam Questions on Python for revision
Sample Exam Questions on Python for revisionafsheenfaiq2
 
stackconf 2022: Optimize Performance with Continuous Production Profiling
stackconf 2022: Optimize Performance with Continuous Production Profilingstackconf 2022: Optimize Performance with Continuous Production Profiling
stackconf 2022: Optimize Performance with Continuous Production ProfilingNETWAYS
 
CS540-2-lecture11 - Copy.ppt
CS540-2-lecture11 - Copy.pptCS540-2-lecture11 - Copy.ppt
CS540-2-lecture11 - Copy.pptssuser0be977
 
LSFMM 2019 BPF Observability
LSFMM 2019 BPF ObservabilityLSFMM 2019 BPF Observability
LSFMM 2019 BPF ObservabilityBrendan Gregg
 
Python for Scientific Computing -- Ricardo Cruz
Python for Scientific Computing -- Ricardo CruzPython for Scientific Computing -- Ricardo Cruz
Python for Scientific Computing -- Ricardo Cruzrpmcruz
 
design-compiler.pdf
design-compiler.pdfdesign-compiler.pdf
design-compiler.pdfFrangoCamila
 

Similar a GCC (20)

Boosting Developer Productivity with Clang
Boosting Developer Productivity with ClangBoosting Developer Productivity with Clang
Boosting Developer Productivity with Clang
 
Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Data Provenance Support in...
Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Data Provenance Support in...Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Data Provenance Support in...
Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Data Provenance Support in...
 
Как работает LLVM бэкенд в C#. Егор Богатов ➠ CoreHard Autumn 2019
Как работает LLVM бэкенд в C#. Егор Богатов ➠ CoreHard Autumn 2019Как работает LLVM бэкенд в C#. Егор Богатов ➠ CoreHard Autumn 2019
Как работает LLVM бэкенд в C#. Егор Богатов ➠ CoreHard Autumn 2019
 
ERTS UNIT 3.ppt
ERTS UNIT 3.pptERTS UNIT 3.ppt
ERTS UNIT 3.ppt
 
Bytes in the Machine: Inside the CPython interpreter
Bytes in the Machine: Inside the CPython interpreterBytes in the Machine: Inside the CPython interpreter
Bytes in the Machine: Inside the CPython interpreter
 
Windbg랑 친해지기
Windbg랑 친해지기Windbg랑 친해지기
Windbg랑 친해지기
 
Getting started cpp full
Getting started cpp   fullGetting started cpp   full
Getting started cpp full
 
Chapter Eight(3)
Chapter Eight(3)Chapter Eight(3)
Chapter Eight(3)
 
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains
«Отладка в Python 3.6: Быстрее, Выше, Сильнее» Елизавета Шашкова, JetBrains
 
Pragmatic Optimization in Modern Programming - Demystifying the Compiler
Pragmatic Optimization in Modern Programming - Demystifying the CompilerPragmatic Optimization in Modern Programming - Demystifying the Compiler
Pragmatic Optimization in Modern Programming - Demystifying the Compiler
 
The Nuts and Bolts of Kafka Streams---An Architectural Deep Dive
The Nuts and Bolts of Kafka Streams---An Architectural Deep DiveThe Nuts and Bolts of Kafka Streams---An Architectural Deep Dive
The Nuts and Bolts of Kafka Streams---An Architectural Deep Dive
 
不深不淺,帶你認識 LLVM (Found LLVM in your life)
不深不淺,帶你認識 LLVM (Found LLVM in your life)不深不淺,帶你認識 LLVM (Found LLVM in your life)
不深不淺,帶你認識 LLVM (Found LLVM in your life)
 
Sample Exam Questions on Python for revision
Sample Exam Questions on Python for revisionSample Exam Questions on Python for revision
Sample Exam Questions on Python for revision
 
stackconf 2022: Optimize Performance with Continuous Production Profiling
stackconf 2022: Optimize Performance with Continuous Production Profilingstackconf 2022: Optimize Performance with Continuous Production Profiling
stackconf 2022: Optimize Performance with Continuous Production Profiling
 
CS540-2-lecture11 - Copy.ppt
CS540-2-lecture11 - Copy.pptCS540-2-lecture11 - Copy.ppt
CS540-2-lecture11 - Copy.ppt
 
Code Optimization.ppt
Code Optimization.pptCode Optimization.ppt
Code Optimization.ppt
 
LSFMM 2019 BPF Observability
LSFMM 2019 BPF ObservabilityLSFMM 2019 BPF Observability
LSFMM 2019 BPF Observability
 
UNIT 2 LOOP CONTROL.pptx
UNIT 2 LOOP CONTROL.pptxUNIT 2 LOOP CONTROL.pptx
UNIT 2 LOOP CONTROL.pptx
 
Python for Scientific Computing -- Ricardo Cruz
Python for Scientific Computing -- Ricardo CruzPython for Scientific Computing -- Ricardo Cruz
Python for Scientific Computing -- Ricardo Cruz
 
design-compiler.pdf
design-compiler.pdfdesign-compiler.pdf
design-compiler.pdf
 

Más de Kir Chou

Learn from LL(1) to PEG parser the hard way
Learn from LL(1) to PEG parser the hard wayLearn from LL(1) to PEG parser the hard way
Learn from LL(1) to PEG parser the hard wayKir Chou
 
Time travel: Let’s learn from the history of Python packaging!
Time travel: Let’s learn from the history of Python packaging!Time travel: Let’s learn from the history of Python packaging!
Time travel: Let’s learn from the history of Python packaging!Kir Chou
 
Python パッケージの影響を歴史から理解してみよう!
Python パッケージの影響を歴史から理解してみよう!Python パッケージの影響を歴史から理解してみよう!
Python パッケージの影響を歴史から理解してみよう!Kir Chou
 
The str/bytes nightmare before python2 EOL
The str/bytes nightmare before python2 EOLThe str/bytes nightmare before python2 EOL
The str/bytes nightmare before python2 EOLKir Chou
 
PyCon TW 2018 - A Python Engineer Under Giant Umbrella (巨大保護傘下的 Python 碼農辛酸史)
PyCon TW 2018 - A Python Engineer Under Giant Umbrella (巨大保護傘下的 Python 碼農辛酸史) PyCon TW 2018 - A Python Engineer Under Giant Umbrella (巨大保護傘下的 Python 碼農辛酸史)
PyCon TW 2018 - A Python Engineer Under Giant Umbrella (巨大保護傘下的 Python 碼農辛酸史) Kir Chou
 
Introduction of CTF and CGC
Introduction of CTF and CGCIntroduction of CTF and CGC
Introduction of CTF and CGCKir Chou
 
PyCon TW 2017 - Why do projects fail? Let's talk about the story of Sinon.PY
PyCon TW 2017 - Why do projects fail? Let's talk about the story of Sinon.PYPyCon TW 2017 - Why do projects fail? Let's talk about the story of Sinon.PY
PyCon TW 2017 - Why do projects fail? Let's talk about the story of Sinon.PYKir Chou
 
Spime - personal assistant
Spime - personal assistantSpime - personal assistant
Spime - personal assistantKir Chou
 
Ch9 package & port(2013 ncu-nos_nm)
Ch9 package & port(2013 ncu-nos_nm)Ch9 package & port(2013 ncu-nos_nm)
Ch9 package & port(2013 ncu-nos_nm)Kir Chou
 
Ch8 file system management(2013 ncu-nos_nm)
Ch8   file system management(2013 ncu-nos_nm)Ch8   file system management(2013 ncu-nos_nm)
Ch8 file system management(2013 ncu-nos_nm)Kir Chou
 
Ch7 user management(2013 ncu-nos_nm)
Ch7   user management(2013 ncu-nos_nm)Ch7   user management(2013 ncu-nos_nm)
Ch7 user management(2013 ncu-nos_nm)Kir Chou
 
Ch10 firewall(2013 ncu-nos_nm)
Ch10 firewall(2013 ncu-nos_nm)Ch10 firewall(2013 ncu-nos_nm)
Ch10 firewall(2013 ncu-nos_nm)Kir Chou
 
Knowledge Management in Distributed Agile Software Development
Knowledge Management in Distributed Agile Software DevelopmentKnowledge Management in Distributed Agile Software Development
Knowledge Management in Distributed Agile Software DevelopmentKir Chou
 
Sitcon2014 community by server (kir)
Sitcon2014   community by server (kir)Sitcon2014   community by server (kir)
Sitcon2014 community by server (kir)Kir Chou
 
Webapp(2014 ncucc)
Webapp(2014 ncucc)Webapp(2014 ncucc)
Webapp(2014 ncucc)Kir Chou
 
廢除雙二一議題 保留方論點 (2013ncu全幹會)
廢除雙二一議題   保留方論點 (2013ncu全幹會)廢除雙二一議題   保留方論點 (2013ncu全幹會)
廢除雙二一議題 保留方論點 (2013ncu全幹會)Kir Chou
 
Ch6 ssh(2013 ncu-nos_nm)
Ch6   ssh(2013 ncu-nos_nm)Ch6   ssh(2013 ncu-nos_nm)
Ch6 ssh(2013 ncu-nos_nm)Kir Chou
 
Ch5 network basic(2013 ncu-nos_nm)
Ch5   network basic(2013 ncu-nos_nm)Ch5   network basic(2013 ncu-nos_nm)
Ch5 network basic(2013 ncu-nos_nm)Kir Chou
 

Más de Kir Chou (20)

Learn from LL(1) to PEG parser the hard way
Learn from LL(1) to PEG parser the hard wayLearn from LL(1) to PEG parser the hard way
Learn from LL(1) to PEG parser the hard way
 
Time travel: Let’s learn from the history of Python packaging!
Time travel: Let’s learn from the history of Python packaging!Time travel: Let’s learn from the history of Python packaging!
Time travel: Let’s learn from the history of Python packaging!
 
Python パッケージの影響を歴史から理解してみよう!
Python パッケージの影響を歴史から理解してみよう!Python パッケージの影響を歴史から理解してみよう!
Python パッケージの影響を歴史から理解してみよう!
 
The str/bytes nightmare before python2 EOL
The str/bytes nightmare before python2 EOLThe str/bytes nightmare before python2 EOL
The str/bytes nightmare before python2 EOL
 
PyCon TW 2018 - A Python Engineer Under Giant Umbrella (巨大保護傘下的 Python 碼農辛酸史)
PyCon TW 2018 - A Python Engineer Under Giant Umbrella (巨大保護傘下的 Python 碼農辛酸史) PyCon TW 2018 - A Python Engineer Under Giant Umbrella (巨大保護傘下的 Python 碼農辛酸史)
PyCon TW 2018 - A Python Engineer Under Giant Umbrella (巨大保護傘下的 Python 碼農辛酸史)
 
Introduction of CTF and CGC
Introduction of CTF and CGCIntroduction of CTF and CGC
Introduction of CTF and CGC
 
PyCon TW 2017 - Why do projects fail? Let's talk about the story of Sinon.PY
PyCon TW 2017 - Why do projects fail? Let's talk about the story of Sinon.PYPyCon TW 2017 - Why do projects fail? Let's talk about the story of Sinon.PY
PyCon TW 2017 - Why do projects fail? Let's talk about the story of Sinon.PY
 
Spime - personal assistant
Spime - personal assistantSpime - personal assistant
Spime - personal assistant
 
Ch9 package & port(2013 ncu-nos_nm)
Ch9 package & port(2013 ncu-nos_nm)Ch9 package & port(2013 ncu-nos_nm)
Ch9 package & port(2013 ncu-nos_nm)
 
Ch8 file system management(2013 ncu-nos_nm)
Ch8   file system management(2013 ncu-nos_nm)Ch8   file system management(2013 ncu-nos_nm)
Ch8 file system management(2013 ncu-nos_nm)
 
Ch7 user management(2013 ncu-nos_nm)
Ch7   user management(2013 ncu-nos_nm)Ch7   user management(2013 ncu-nos_nm)
Ch7 user management(2013 ncu-nos_nm)
 
Ch10 firewall(2013 ncu-nos_nm)
Ch10 firewall(2013 ncu-nos_nm)Ch10 firewall(2013 ncu-nos_nm)
Ch10 firewall(2013 ncu-nos_nm)
 
Knowledge Management in Distributed Agile Software Development
Knowledge Management in Distributed Agile Software DevelopmentKnowledge Management in Distributed Agile Software Development
Knowledge Management in Distributed Agile Software Development
 
Cms part2
Cms part2Cms part2
Cms part2
 
Cms part1
Cms part1Cms part1
Cms part1
 
Sitcon2014 community by server (kir)
Sitcon2014   community by server (kir)Sitcon2014   community by server (kir)
Sitcon2014 community by server (kir)
 
Webapp(2014 ncucc)
Webapp(2014 ncucc)Webapp(2014 ncucc)
Webapp(2014 ncucc)
 
廢除雙二一議題 保留方論點 (2013ncu全幹會)
廢除雙二一議題   保留方論點 (2013ncu全幹會)廢除雙二一議題   保留方論點 (2013ncu全幹會)
廢除雙二一議題 保留方論點 (2013ncu全幹會)
 
Ch6 ssh(2013 ncu-nos_nm)
Ch6   ssh(2013 ncu-nos_nm)Ch6   ssh(2013 ncu-nos_nm)
Ch6 ssh(2013 ncu-nos_nm)
 
Ch5 network basic(2013 ncu-nos_nm)
Ch5   network basic(2013 ncu-nos_nm)Ch5   network basic(2013 ncu-nos_nm)
Ch5 network basic(2013 ncu-nos_nm)
 

Último

Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identityteam-WIBU
 

Último (20)

Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
 

GCC