+
Skip to content

oneclickvirt/stream

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

stream

一个嵌入stream依赖的golang库(A golang library with embedded stream dependencies)

关于 About

这个库提供了对STREAM内存带宽基准测试工具的Go语言封装。STREAM基准测试是一个简单的合成基准程序,用于测量可持续的内存带宽(MB/s)和简单向量内核的相应计算速率。

This library provides a Go wrapper for the STREAM memory bandwidth benchmark tool. The STREAM benchmark is a simple synthetic benchmark program that measures sustainable memory bandwidth (in MB/s) and the corresponding computation rate for simple vector kernels.

特性 Features

  • 支持多平台:Linux (amd64, arm64, 386, arm等), macOS (arm64), Windows (amd64, 386, arm64)
  • 自动检测并使用系统安装的stream,或使用嵌入的二进制文件
  • 自动清理临时文件
  • Multi-platform support: Linux (amd64, arm64, 386, arm, etc.), macOS (arm64), Windows (amd64, 386, arm64)
  • Automatically detects and uses system-installed stream, or uses embedded binaries
  • Automatic cleanup of temporary files

安装 Installation

go get github.com/oneclickvirt/stream@v0.0.2-20250924154001

使用方法 Usage

package main

import (
    "log"
    "github.com/oneclickvirt/stream"
)

func main() {
    // 获取stream命令路径
    // Get stream command path
    streamCmd, tempFile, err := stream.GetStream()
    if err != nil {
        log.Fatalf("Failed to get stream: %v", err)
    }

    // 如果使用了临时文件,确保清理
    // Clean up temporary files if used
    if tempFile != "" {
        defer stream.CleanStream(tempFile)
    }

    // 执行stream基准测试
    // Execute stream benchmark
    err = stream.ExecuteStream(streamCmd, []string{})
    if err != nil {
        log.Fatalf("Failed to execute stream: %v", err)
    }
}

API文档 API Documentation

函数 Functions

GetStream() (string, string, error)

获取可用的stream命令路径。

Get the available stream command path.

返回值 Returns:

  • string: stream命令的路径 (Path to the stream command)
  • string: 临时文件路径(如果使用了嵌入的二进制文件)(Temporary file path if using embedded binary)
  • error: 错误信息 (Error information)

ExecuteStream(streamPath string, args []string) error

执行stream命令。

Execute the stream command.

参数 Parameters:

  • streamPath: stream命令的路径 (Path to the stream command)
  • args: 传递给stream的参数 (Arguments to pass to stream)

CleanStream(tempFile string) error

清理临时文件。

Clean up temporary files.

参数 Parameters:

  • tempFile: 需要清理的临时文件路径 (Path to temporary file to clean up)

平台支持 Platform Support

库包含了以下平台的预编译二进制文件:

The library includes precompiled binaries for the following platforms:

Linux

  • amd64 (x86_64)
  • 386 (x86 32-bit)
  • arm64 (ARMv8)
  • arm (ARMv7)
  • armv6 (ARMv6)
  • riscv64 (RISC-V 64-bit)
  • ppc64le (PowerPC64 little-endian)
  • ppc64 (PowerPC64 big-endian)
  • mips64le (MIPS64 little-endian)
  • mips64 (MIPS64 big-endian)
  • mipsle (MIPS little-endian)
  • mips (MIPS big-endian)
  • s390x (IBM System z)

macOS

  • arm64 (Apple Silicon)

Windows

  • amd64 (x86_64)
  • 386 (x86 32-bit)
  • arm64

许可证 License

MIT License

About

一个嵌入stream依赖的golang库(A golang library with embedded stream dependencies)

Topics

Resources

License

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •  

Languages

点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载