hashcat currently supports CPUs, GPUs and other hardware accelerators on Linux, Windows and macOS and has facilities to help enable distributed password cracking.
Hashcat Features:
Multi-Platform (CPU, GPU, APU, etc, anything that comes with the OpenCL runtime)
Multiple Hash (Hashing more than one hash at the same time)
Multiple Devices (Using multiple devices on the same system)
Multiple Device Types (Using mixed device types in the same system)
Supports password candidate brain functionality
Supports distributed shard networks (using overlay)
Supports interactive pause/resume
Supports sessions
Supports restore
Supports reading password candidates from file and stdin
Supports hex-salt and hex-charset
Supports automatic performance tuning
Supports automatic keyspace ordering of Markov chains
Built-in benchmarking system