Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao...

27
Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity, Inc. Santa Clara, USA Shanghai, China Contact: [email protected]

Transcript of Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao...

Page 1: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

Sigrity, Inc. 2007 ©

Efficient Signal and Power Integrity Analysis Using Parallel Techniques

Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam

Sigrity, Inc.

Santa Clara, USA

Shanghai, China

Contact: [email protected]

Page 2: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

2

Contents

Introduction Hyperthreading, Multithreading, Multicore

and Distributed computing Application examples Closing remarks

Page 3: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

3

Targ

eted S

olu

tion

sC

ore A

nalysis

Bread

th

SPEED97SPEED2000

PowerSI

PowerDC

CoDesign

OrbitIO

XtractIM

OptimizePI

UPD

XcitePI

Broadband Spice

PowerDC

XtractIM

OptimizePI

Introduction

Foundation analysis technology• Signal integrity / power integrity

• Advanced capability and flexibility

Increasing product breadth• Multi-domain capability

• IC package layout

Targeted solutions• Specific applications

• Useful for non-experts

Page 4: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

4

Multitasking vs. Multithreading

Multitasking operating systems run multiple programs simultaneously.

OS is reponsible for splitting the time among the different programs that are running.

Multithreading enables users and programs to accomplish multiple simultaneous tasks.

Page 5: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

5

Evolution of Multi-Core Technology

Single-threading:

Only one task processes at one time.

Multitasking and Multithreading: Two or more tasks execute at one time by using content switching.

Hyper-threading Technology: Two single threads execute simultaneously on the same processor core.

Multi-core Technology: Computational work of an application is divided and spread over multiple execution cores.

Page 6: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

6

Hyper-Threading vs. Multi-Core

One execution core in a processor is shared by two threads.

The execution core executes one thread by utilizing those resources that the other thread is not using.

Resource conflicts can occur when two threads are assigned the same task.

HT Technology:

Two or more independent execution cores are embedded in a single processor.

Each thread is executed by an independent execution core.

Each thread runs in parallel manner effectively.

Multi-Core Technology:

Page 7: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

7

Multi-Threaded Execution

Each thread is executed concurrently in each execution core. Each thread has its own hardware execution environment. Multiple tasks can be executed concurrently.

In a multi-core processor:

Page 8: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

8

Threading Methodology

Multithreaded applications are difficult to understand, debug and optimize.

Selecting the right threading approach is crucial. When threading strategies are well planned,

application design and development effort is streamlined.

Page 9: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

9

Typical Electrical Package/PCB Analysis Flow(SPEED tool set)

Layout file

SPD fileElectrical parameter extraction

Wirebonds

Traces

Vias

Pads/Antipads

Mesh generation

Field-Circuit modeling

Frequency sweep

Result

PowerSI – General purpose full-wave tool for IC packages and PCBsXtractIM – Customized full IC package extractionOptimizePI – Package/PCB Decap Optimization

TranslationShape

processing

Page 10: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

10

Sigrity’s Solver Technology

Hybrid Solver Technology

Trans.Line

Solver

CircuitSolver

PlaneSolver

Frequency-domain simulation needs assembling individual systems together.

Page 11: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

11

Achieving Optimum Performance

Decide when to use multithreading Logical –vs- Physical processors Load balancing Thread safety Waiting for shared resources Granularity Memory leaks

Page 12: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

12

Controlling the Number of Processors

Page 13: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

13

Speed-up with Multiple Threads

CPUs

0

1

2

3

4

1 2 3 4 5 6Case number

Sca

ling

fa

cto

r

1

2

3

4

EM64T Physical processors – 4CPU – 3192MHz Physical memory – 16GB

Electrical modeling of pads

Page 14: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

14

Speedup with Multiple Threads

CPUs

0

1

2

3

4

1 2 3 4 5 6Case number

Sca

ling

fa

cto

r

1

2

3

4

Transmission line modeling

EM64T Physical processors – 4CPU – 3192MHz Physical memory – 16GB

Page 15: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

15

Single Core vs. Multi-Core

Logical processors: A single core with HT technologyPhysical processors: A dual core system

0

0.5

1

1.5

2

2.5

1 2 3 4Case Number

Sc

ale

Fa

cto

rLogical processors

Physical Processors

Page 16: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

16

Distributed Computing in PowerSI

Page 17: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

17

Server Setup

Page 18: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

18

S-parameter Extraction - PowerSI

Host Host + Server Host +

two servers

Speed-Up

(Time in Hours)

1

(~28)

1.88

(~14)

2.65

(~11)

Note: Host is x86 and servers are x64 machines.

Description: Wirebond package on DDR3

14 layers Size = 132mm x 29mm # vias = 6085 # traces = 27,398 Simulation time/spot = 494s

Page 19: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

19

Decap Optimization - OptimizePI

30 layer FC pkg + Board170 Decaps – Non-linear analysisOptimized for performance/cost10KHz – 300MHzPotential solutions computed = 150,000

Statistics:

CPUs 1 2 3 4

Time 16H 8.1H 5.5H 4.2H

Page 20: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

20

Broadband Package Model Extraction - XtractIM

8 layer FBGA packageFull package with 128 netsBand: 10KHz to 5GHz1280 variables to optimize

Statistics:

CPUs 1 2 3 4

Time 8.3H 4.2H 2.85H 2.2H

Page 21: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

21

Closing Remarks

Concurrent threads are required to take full advantage of multi-processor/multi-core systems.

Identify and focus on areas that will have most impact on the performance.

Significant time savings can be realized with proper tuning, thus leading to a faster turn-around time in the layout analysis.

Page 22: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

22

Questions?

Thank You!Thank You!

Page 23: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

23

BACKUP

Page 24: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

24

Concepts of Multithreading

Task A

Processor

A Threading library creates threads and

assigns processor time to each thread

T0T1

T2

Page 25: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

25

Concepts of Multithreading

Threads from a common Task have the same memory space (Shared Memory)

They can simultaneously access variables that were instantiated before creating the threads.

Page 26: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

26

Concepts of Multithreading

Task A

Processor 1T0

T1T2

Processor 2

Processor 3

Processor 4

Multiprocessor Environment

Page 27: Sigrity, Inc. 2007 © Efficient Signal and Power Integrity Analysis Using Parallel Techniques Tao Su, Xiaofeng Wang, Zhengang Bai, Venkata Vennam Sigrity,

27

Concepts of Multithreading

Different Threading libraries are

available in different platforms

PThreads SProc Win32 Threads