Skip to content

System Configuration Validation and Optimization for Compute Express Link (CXL) Environments

License

Notifications You must be signed in to change notification settings

sscargal/cxlchk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

CXLChk: A System Configuration Validation and Optimization Checker for Compute Express Link (CXL) Environments

Project Overview

This project provides a command-line tool to analyze Linux server configurations that have Compute Express Link (CXL) devices. It checks for configuration issues, hardware failures, and provides optimization recommendations. The tool consists of two main components: a Data Collector and an Analyzer. The Data Collector collects data from a server. The Analyzer processes the collected data using rules. The tool can process data both online (directly from a live server) and offline (from collected data).

Installation

Prerequisites

cxlchk has the following requirements:

  • Python 3.8 or higher
  • A Linux server with Compute Express Link (CXL) devices
    • Linux Mainline Kernel 5.19 or higher is recommended
    • Linux Distributions such as Ubuntu 22.04.01, Fedora 36, or later are recommended

Installing

Clone the repository:

git clone https://github.com/sscargal/cxlchk

Navigate to the project directory:

cd cxlchk

Install the required dependencies:

pip install -r requirements.txt

Usage

Basic Usage

Data Collection Mode:

This command will execute the collector on a live server and save the data for offline analysis.

cxlchk -C

Data Analysis Mode:

Use this command to execute the analyzer on a previously collected dataset.

cxlchk -A [path/to/dataset.tar.gz]

List Rule Groups:

Lists all available rule groups.

cxlchk -l

Advanced Usage

Including Specific Rule Groups:

Analyze the dataset using only specific rule groups (e.g.: group1 and group2).

cxlchk -A [path/to/dataset.tar.gz] -i group1 group2

Excluding Specific Rule Groups:

Analyze the dataset excluding specific rule groups (e.g.: group1 and group2).

cxlchk -A [path/to/dataset.tar.gz] -e group1 group2

Verbose Output:

Run the collector with verbose output. Use -vv or -vvv for more detailed output.

cxlchk -C -v

Examples

Collect data with verbose output:

cxlchk -C -vv

Analyze a specific dataset, including only rules from network and security groups:

cxlchk -A /path/to/data.tar.gz -i network security

Analyze a dataset excluding the hardware rule group:

cxlchk -A /path/to/data.tar.gz -e hardware

List all available rule groups:

cxlchk -l

Contributing

Contributions to this project are welcome. Please make sure your code follows the project's coding standards and includes the appropriate tests described in CONTRIBUTING.md.

About

System Configuration Validation and Optimization for Compute Express Link (CXL) Environments

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published