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
37 38 39 |
# File 'lib/candle/build_info.rb', line 37 def self.accelerate_available? Candle.build_info["accelerate_available"] end |
.cuda_available? ⇒ Boolean
25 26 27 |
# File 'lib/candle/build_info.rb', line 25 def self.cuda_available? Candle.build_info["cuda_available"] end |
.cudnn_available? ⇒ Boolean
41 42 43 |
# File 'lib/candle/build_info.rb', line 41 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 |
# File 'lib/candle/build_info.rb', line 3 def self.display_cuda_info info = Candle.build_info # CUDA info is now controlled by logger level 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 Candle.logger.warn "=" * 80 Candle.logger.warn "Red Candle: CUDA detected on system but not enabled in build." Candle.logger.warn "This may be due to CANDLE_DISABLE_CUDA being set during installation." Candle.logger.warn "To enable CUDA support, reinstall without CANDLE_DISABLE_CUDA set." Candle.logger.warn "=" * 80 end # :nocov: end end |
.metal_available? ⇒ Boolean
29 30 31 |
# File 'lib/candle/build_info.rb', line 29 def self. Candle.build_info["metal_available"] end |
.mkl_available? ⇒ Boolean
33 34 35 |
# File 'lib/candle/build_info.rb', line 33 def self.mkl_available? Candle.build_info["mkl_available"] end |
.summary ⇒ Object
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
# File 'lib/candle/build_info.rb', line 45 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 |