SkillAgentSearch skills...

Cozgo

Coz profiler Golang wrapper - Coz employs a novel technique we call causal profiling that measures optimization potential.

Install / Use

/learn @urjitbhatia/Cozgo
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

coz-go

Coz profiler Golang wrapper.

This is a golang wrapper around the Coz profiler here: https://github.com/plasma-umass/coz

Code Usage {#code-usage}

| Coz Call | Equivalent CozGo Call | Description | | ----------- | ----------- | ----------- | | COZ_BEGIN("name") | cozgo.Begin("name") | Begin a latency profiling block identified by the name | | COZ_END("name") | cozgo.End("name") | End a latency profiling block identified by the name| | COZ_PROGRESS() | cozgo.Progress() | Specify a progress point within a block of work| | COZ_PROGRESS() | cozgo.NamedProgress("name") | Specify a named progress point within a block of work|

For background on causal profiling, see

Paper: http://www.sigops.org/s/conferences/sosp/2015/current/2015-Monterey/printable/090-curtsinger.pdf

Blog: https://morsmachine.dk/causalprof

Running/Usage

  • Install Coz: https://github.com/plasma-umass/coz
    • For OS X users, the easiest way is to run a docker image with linux and install Coz
    • 'apt update; apt install coz-profiler'
  • Import cozgo: import "github.com/urjitbhatia/cozgo"
  • Call the Coz wrappers in your application
  • Build your go binary with the flags: -ldflags=-compressdwarf=false -gcflags=all="-N -l" so that Coz can identify the debug symbols properly
  • Run your application with Coz: coz run --- yourGoBinary
  • Let the application run for a while (you might want to run some load test etc, so that the profiler can pick up usage data)
  • By default, Coz will create a file called profile.coz
  • Use the Coz viewer to analyze the profile
View on GitHub
GitHub Stars146
CategoryDevelopment
Updated1mo ago
Forks11

Languages

Go

Security Score

100/100

Audited on Jan 30, 2026

No findings