# 🧬 groverifier

**Professional GROMACS GPU Compatibility Checker**

`groverifier` is a comprehensive, enterprise-grade CLI tool designed to verify your system and GPU environment before running GPU-accelerated GROMACS molecular dynamics simulations. Features a modern, professional interface with real-time monitoring capabilities.

## ✨ Features

### 🎯 **Professional Visual Interface**
- **Animated startup sequence** with professional branding
- **Color-coded status indicators** for instant readability
- **Progress bars** for resource utilization visualization
- **Structured sections** with clear visual hierarchy
- **Professional typography** and consistent formatting

### 🔬 **GROMACS Analysis**
- **Complete installation verification** with detailed build information
- **Version detection** and build date analysis
- **Precision analysis** (single/double precision)
- **SIMD instruction set** detection
- **FFT library** identification
- **GPU and MPI support** validation
- **Executable path** verification

### 🎮 **Advanced GPU Monitoring**
- **Multi-GPU support** with individual GPU analysis
- **Real-time memory usage** with visual progress bars
- **GPU utilization monitoring** with percentage indicators
- **Temperature monitoring** for thermal management
- **Power consumption tracking** (draw vs. limit)
- **NVIDIA driver and CUDA version** detection

### 💻 **Comprehensive System Analysis**
- **Hardware specifications**: CPU cores (physical/logical), architecture
- **System information**: OS, hostname, uptime calculation
- **CPU frequency monitoring** and load averages
- **Python environment** details and executable path
- **Boot time tracking** and system uptime

### 📊 **Resource Monitoring**
- **Real-time RAM usage** with visual progress bars
- **Swap memory monitoring** with utilization percentages
- **CPU utilization** with per-core breakdown
- **Load averages** (1m, 5m, 15m intervals)
- **Available memory** calculations

### 🚀 **Professional Output Options**
- **Interactive CLI mode** with full visual presentation
- **JSON export** for automation and CI/CD integration
- **Compact JSON** for space-efficient data transfer
- **Startup animation** (can be disabled for scripting)
- **Professional status reporting** with recommendations

## 🛠 Installation

```bash
pip install .
```

## 🚀 Usage

### Professional Interface (Recommended)
```bash
# Full professional assessment with animation
groverifier

# Skip animation for faster execution
groverifier --no-animation
```

### Automation & Integration
```bash
# JSON output for scripts and automation
groverifier --json

# Compact JSON for minimal data transfer
groverifier --json --compact

# Help and version information
groverifier --help
groverifier --version
```

## 📸 Sample Output

The tool provides a professionally formatted assessment including:

### 🧬 GROMACS Installation Analysis
- Installation status with checkmarks
- Version, build date, and precision details
- SIMD, FFT, GPU, and MPI support status
- Complete executable path information

### 🎮 GPU Hardware Assessment
- NVIDIA GPU detection with driver versions
- Individual GPU analysis for multi-GPU systems
- Memory usage with color-coded progress bars
- Real-time utilization, temperature, and power monitoring

### 💻 System Specifications
- Operating system and architecture details
- CPU specifications with core counts and frequency
- System uptime and Python environment information

### 📊 Resource Utilization
- RAM and swap usage with visual progress bars
- CPU utilization with load averages
- Color-coded indicators based on usage levels

### 🎯 Professional Assessment
- **Ready/Not Ready** status with clear visual indicators
- Specific recommendations for system optimization
- Professional branding and support information

## 🎨 Professional Features

- **🌈 Color Coding**: Status indicators use green for success, red for issues, yellow for warnings
- **📊 Progress Bars**: Visual representation of resource usage with color-coded thresholds
- **🎬 Animations**: Professional startup sequence with progress tracking
- **📐 Consistent Layout**: Structured sections with clear visual hierarchy
- **🔧 Flexible Output**: Professional CLI or structured JSON for automation

## 💼 Enterprise Ready

- **CI/CD Integration**: JSON output perfect for automated testing pipelines
- **Professional Reporting**: Enterprise-grade visual presentation
- **Multi-Platform**: Optimized for Linux/WSL environments
- **Extensible**: Clean code structure for custom modifications
- **Reliable**: Comprehensive error handling and fallback mechanisms

## 🖥 System Requirements

- **Environment**: Linux/WSL (Windows users should use WSL for optimal GROMACS support)
- **Python**: 3.8+ with psutil library
- **GROMACS**: Any version (for complete assessment)
- **NVIDIA GPU**: With drivers installed (for GPU acceleration features)

## 💡 Professional Tip

For the best experience, run groverifier in a full-screen terminal with good color support. The tool automatically detects your system capabilities and provides the most professional presentation possible.

---

*groverifier v1.1.0 - Professional GROMACS GPU Assessment Tool*
