Skip to content

Commit

Permalink
debug
Browse files Browse the repository at this point in the history
  • Loading branch information
DX990307 committed Mar 28, 2024
1 parent 6e1be5c commit 15642fd
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 6 deletions.
22 changes: 16 additions & 6 deletions analysis/perf_analyzer.go
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ type PerfAnalyzer struct {
period sim.VTimeInSec
engine sim.Engine
backend PerfAnalyzerBackend
backendFlag bool
portDataTable map[string]PerfAnalyzerEntry

mu sync.Mutex
Expand Down Expand Up @@ -119,7 +120,9 @@ func (b *PerfAnalyzer) RegisterPort(port sim.Port) {
// AddDataEntry adds a data entry to the database. It directly writes into the
// CSV file.
func (b *PerfAnalyzer) AddDataEntry(entry PerfAnalyzerEntry) {
b.backend.AddDataEntry(entry)
if b.backendFlag {
b.backend.AddDataEntry(entry)
}

b.mu.Lock()
key := entry.Where + entry.What + entry.EntryType + entry.Unit
Expand Down Expand Up @@ -179,19 +182,26 @@ func (b PerfAnalyzerBuilder) WithEngine(
// Build creates a PerfAnalyzer.
func (b PerfAnalyzerBuilder) Build() *PerfAnalyzer {
var backend PerfAnalyzerBackend
if b.backendType == "csv" {
backend = NewCSVPerfAnalyzerBackend(b.dbFilename)
} else if b.backendType == "sqlite" {
backend = NewSQLitePerfAnalyzerBackend(b.dbFilename)
var backendFlag bool
if b.dbFilename != "" {
backendFlag = true
if b.backendType == "csv" {
backend = NewCSVPerfAnalyzerBackend(b.dbFilename)
} else if b.backendType == "sqlite" {
backend = NewSQLitePerfAnalyzerBackend(b.dbFilename)
} else {
panic("Unknown backend type")
}
} else {
panic("Unknown backend type")
backendFlag = false
}

return &PerfAnalyzer{
period: b.period,
backend: backend,
engine: b.engine,
usePeriod: b.usePeriod,
backendFlag: backendFlag,
portDataTable: make(map[string]PerfAnalyzerEntry),
}
}
Expand Down
4 changes: 4 additions & 0 deletions analysis/perf_analyzer_backend.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,10 @@ type CSVBackend struct {

// NewCSVPerfAnalyzerBackend creates a new CSVPerfAnalyzerBackend.
func NewCSVPerfAnalyzerBackend(dbFilename string) *CSVBackend {
if dbFilename == "" {
return nil
}

p := &CSVBackend{}

var err error
Expand Down

0 comments on commit 15642fd

Please sign in to comment.