Module: Candle::BuildInfo
- Defined in:
- lib/candle/build_info.rb
Class Method Summary collapse
- .accelerate_available? ⇒ Boolean
- .cuda_available? ⇒ Boolean
- .cudnn_available? ⇒ Boolean
- .display_cuda_info ⇒ Object
- .metal_available? ⇒ Boolean
- .mkl_available? ⇒ Boolean
- .summary ⇒ Object
Class Method Details
.accelerate_available? ⇒ Boolean
38 39 40 |
# File 'lib/candle/build_info.rb', line 38 def self.accelerate_available? Candle.build_info["accelerate_available"] end |
.cuda_available? ⇒ Boolean
26 27 28 |
# File 'lib/candle/build_info.rb', line 26 def self.cuda_available? Candle.build_info["cuda_available"] end |
.cudnn_available? ⇒ Boolean
42 43 44 |
# File 'lib/candle/build_info.rb', line 42 def self.cudnn_available? Candle.build_info["cudnn_available"] end |
.display_cuda_info ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/candle/build_info.rb', line 3 def self.display_cuda_info info = Candle.build_info # Only display CUDA info if running in development or if CANDLE_VERBOSE is set return unless ENV['CANDLE_VERBOSE'] || ENV['CANDLE_DEBUG'] || $DEBUG if info["cuda_available"] == false # :nocov: # Check if CUDA could be available on the system cuda_potentially_available = ENV['CUDA_ROOT'] || ENV['CUDA_PATH'] || File.exist?('/usr/local/cuda') || File.exist?('/opt/cuda') if cuda_potentially_available warn "=" * 80 warn "Red Candle: CUDA detected on system but not enabled in build." warn "This may be due to CANDLE_DISABLE_CUDA being set during installation." warn "To enable CUDA support, reinstall without CANDLE_DISABLE_CUDA set." warn "=" * 80 end # :nocov: end end |
.metal_available? ⇒ Boolean
30 31 32 |
# File 'lib/candle/build_info.rb', line 30 def self. Candle.build_info["metal_available"] end |
.mkl_available? ⇒ Boolean
34 35 36 |
# File 'lib/candle/build_info.rb', line 34 def self.mkl_available? Candle.build_info["mkl_available"] end |
.summary ⇒ Object
46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/candle/build_info.rb', line 46 def self.summary info = Candle.build_info available_backends = [] available_backends << "Metal" if info["metal_available"] available_backends << "CUDA" if info["cuda_available"] available_backends << "CPU" { default_device: info["default_device"], available_backends: available_backends, cuda_available: info["cuda_available"], metal_available: info["metal_available"], mkl_available: info["mkl_available"], accelerate_available: info["accelerate_available"], cudnn_available: info["cudnn_available"] } end |