System Requirements
Hardware, operating system, GPU, storage, and network requirements for BCILattice.
Requirements at a Glance
| Requirement | Minimum | Recommended | High-Performance |
|---|---|---|---|
| RAM | 8 GB | 16 GB | 32 GB+ |
| CPU | 4-core x86-64, 2.0 GHz | 8-core, 3.0 GHz+ | 16-core workstation |
| Storage | 5 GB free | 20 GB+ SSD | 500 GB+ NVMe SSD |
| GPU | Not required | NVIDIA RTX 3060+ (8 GB VRAM) | NVIDIA RTX 4090 / A100 |
| OS | Windows 10 / macOS 12 / Ubuntu 20.04 | Windows 11 / macOS 14 / Ubuntu 22.04 | Same |
| Internet | Not required (offline mode) | 10 Mbps+ for cloud sync | 100 Mbps+ for team workspaces |
Hardware Requirements
RAM
| Use Case | Recommended RAM |
|---|---|
| Single-subject sessions, up to 64 channels | 8 GB |
| Multi-subject sessions (10–20 subjects), up to 128 channels | 16 GB |
| Large datasets (>50 subjects, high-density EEG 256+ channels) | 32 GB |
| fMRI-EEG co-registration or concurrent fNIRS+EEG | 32 GB+ |
| Deep learning (large batch training, high-res data) | 16–32 GB (+ GPU VRAM) |
CPU
BCILattice uses multi-threading for preprocessing and parallel subject training. More cores = faster batch training on CPU.
| Scenario | Recommended CPU |
|---|---|
| Single-subject, classical ML (LDA, SVM) | 4-core, any modern CPU |
| Multi-subject batch training (10+ subjects) | 8-core, Intel i7 / AMD Ryzen 7 |
| Large cohort (50+ subjects), fast iteration | 16-core, Intel i9 / AMD Ryzen 9 / Threadripper |
| Deep learning (without GPU) | 8-core+ strongly recommended |
Apple Silicon (M1/M2/M3/M4): all tiers are supported with Metal acceleration for PyTorch models.
Operating System Support
| Platform | Supported Versions | Notes |
|---|---|---|
| Windows | Windows 10 (64-bit, 21H2+), Windows 11 | Admin installer or user-level installer available |
| macOS | macOS 12 Monterey – macOS 15 Sequoia | Universal binary (Intel + Apple Silicon). Metal GPU acceleration on Apple Silicon. |
| Linux | Ubuntu 20.04 LTS, 22.04 LTS, 24.04 LTS; Debian 11+; Fedora 38+; RHEL 8+; Arch (any recent) | AppImage (glibc 2.31+). No root required. Runs on most modern distributions. |
GPU & CUDA Support
A GPU is optional but strongly recommended for deep learning models (EEGNet, DeepConvNet, EEGTransformer). CPU-only training is always available.
| GPU Platform | Support | Details |
|---|---|---|
| NVIDIA CUDA | Full support | CUDA 11.8 – 12.4. Requires matching NVIDIA driver (≥520.61). RTX 3060 or better recommended. |
| Apple Metal (MPS) | Full support | Automatic on Apple Silicon Macs via PyTorch Metal Performance Shaders backend. |
| AMD ROCm | Not supported | AMD GPUs fall back to CPU automatically. ROCm support is planned. |
| Intel Arc / Xe | Not supported | Falls back to CPU. Intel XPU support planned. |
Recommended NVIDIA GPUs
| Tier | GPU | VRAM | Use Case |
|---|---|---|---|
| Entry | RTX 3060 / RTX 4060 | 8 GB | Single-subject deep learning, medium datasets |
| Mid-range | RTX 3080 / RTX 4070 | 10–12 GB | Multi-subject batch deep learning |
| High-end | RTX 4090 / RTX 3090 | 24 GB | Large cohort, transformer models, large batch sizes |
| Workstation | NVIDIA A100 / H100 | 40–80 GB | Institutional high-performance compute clusters |
Storage Requirements
| Component | Space Required | Notes |
|---|---|---|
| BCILattice application | ~2.5 GB | Includes bundled Python, libraries, PostgreSQL |
| PostgreSQL data directory | ~100 MB – 2 GB | Grows with sessions and experiment history |
| MLflow experiment store | ~50 MB – 5 GB | Depends on number of runs and stored artifacts |
| Session data (per 10-subject EEG) | ~500 MB – 5 GB | Varies by channel count, duration, sampling rate |
| Preprocessed arrays cache | ~200 MB – 2 GB per session | Cleared by Settings → Storage → Clear Cache |
| Trained model files | ~1 MB – 500 MB per model | Deep learning models are larger (50–500 MB) |
Recommended storage type: NVMe SSD for the BCILattice data directory significantly improves dataset import speed and preprocessing throughput. Spinning HDDs work but are 3–10x slower for large multi-subject datasets.
Network Requirements
BCILattice is fully functional offline. Network access is only needed for optional cloud features.
| Feature | Required Bandwidth | Hosts to Allow |
|---|---|---|
| Initial download & install | ~800 MB download | bcinexus.io |
| Account sign-in & activation | Minimal (JSON API calls) | api.bcinexus.io |
| Session metadata sync | <1 MB per session | api.bcinexus.io |
| Dataset cloud upload (optional) | Up to 5 GB per file upload | storage.bcinexus.io (S3) |
| Community pipeline download | <10 MB per pipeline | api.bcinexus.io |
| Real-time team collaboration | ~50 kbps per active user | ws.bcinexus.io (WebSocket) |
| App updates | ~100–500 MB | updates.bcinexus.io |
Software Dependencies
BCILattice ships as a self-contained installer, all the following are bundled automatically. This table is for reference or enterprise IT inventory purposes.
| Dependency | Bundled Version | Licence |
|---|---|---|
| Python | 3.10.x | PSF Licence |
| PyQt6 | 6.6.x | GPL v3 / Commercial |
| PyTorch | 2.2.x | BSD 3-Clause |
| scikit-learn | 1.4.x | BSD 3-Clause |
| MNE-Python | 1.6.x | BSD 3-Clause |
| NumPy | 1.26.x | BSD 3-Clause |
| SciPy | 1.12.x | BSD 3-Clause |
| Pandas | 2.2.x | BSD 3-Clause |
| MLflow | 2.11.x | Apache 2.0 |
| FastAPI | 0.110.x | MIT |
| PostgreSQL | 15.x | PostgreSQL Licence |
| ONNX Runtime | 1.17.x | MIT |
| SHAP | 0.44.x | MIT |
| Jinja2 | 3.1.x | BSD 3-Clause |
| WeasyPrint | 61.x | BSD 3-Clause |
A full Software Bill of Materials (SBOM) is available on request for enterprise security reviews. Email enterprise@bcinexus.io.
Performance Benchmarks
Representative training times on a standard 10-subject EEG motor imagery dataset (200 epochs, 128 channels, 250 Hz, 4-second trials):
| Model | CPU (8-core) | GPU (RTX 3080) | GPU (RTX 4090) |
|---|---|---|---|
| LDA (Leave-One-Subject-Out) | ~8 seconds | Same (CPU model) | Same (CPU model) |
| SVM (RBF, LOSO) | ~45 seconds | Same (CPU model) | Same (CPU model) |
| EEGNet (50 epochs, LOSO) | ~18 minutes | ~2.5 minutes | ~1.1 minutes |
| DeepConvNet (50 epochs, LOSO) | ~25 minutes | ~3.5 minutes | ~1.5 minutes |
| EEGTransformer (50 epochs, LOSO) | ~55 minutes | ~7 minutes | ~3 minutes |
Preprocessing a 10-subject EEG dataset (bandpass + notch + CAR + resampling): ~15 seconds on any modern CPU.
Large-Scale Deployments
For institutions deploying BCILattice across many workstations:
- Silent installer: Run
BCILattice-Setup.exe /S /D=C:\BCILattice(Windows) for unattended installation - Group policy / MDM: Deployable via SCCM, Intune, Jamf, or Ansible, MSI/PKG packages available on request
- External PostgreSQL: Route all workstations to a shared PostgreSQL server for centralised session storage
- On-premise BCINexus: Docker Compose stack deployable on any Linux server; supports Kubernetes
- Licence activation proxy: For networks with restricted internet access, a licence activation proxy server is provided for Enterprise plans
Contact enterprise@bcinexus.io for enterprise deployment documentation and support.
Pre-Install Checklist
| Check | Details |
|---|---|
| ✓ 64-bit OS | Windows 10+, macOS 12+, or Linux glibc 2.31+ |
| ✓ 8 GB+ RAM | 16 GB recommended for multi-subject work |
| ✓ 5 GB free disk space | 20 GB+ recommended for datasets |
| ✓ NVIDIA driver ≥ 520 | If using GPU acceleration; check with nvidia-smi |
| ✓ Firewall allows outbound 443 | Optional, only needed for cloud sync; not needed for offline use |
| ✓ Windows: admin rights OR user installer | macOS/Linux: no admin/root required |