linux_cpu Derived Type

type, private :: linux_cpu


Inherited by

type~~linux_cpu~~InheritedByGraph type~linux_cpu linux_cpu type~linux_nodes linux_nodes type~linux_nodes->type~linux_cpu cpu type~cluster cluster type~cluster->type~linux_nodes node

Contents

Source Code


Components

Type Visibility Attributes Name Initial
character(len=:), public, allocatable :: debug
character(len=:), public, allocatable :: path_cpu
integer, public :: online
integer, public :: base_frequency
integer, public :: cpuinfo_max_freq
integer, public :: cpuinfo_min_freq
integer, public :: scaling_cur_freq
integer, public :: scaling_max_freq
integer, public :: scaling_min_freq
character(len=:), public, allocatable :: scaling_governor
character(len=:), public, allocatable :: energy_performance_preference

Type-Bound Procedures

procedure, public, :: set_debug => set_cpu_debug_switch

  • private pure elemental subroutine set_cpu_debug_switch(this, debug)

    Author
    Seyed Ali Ghasemi

    Arguments

    Type IntentOptional Attributes Name
    class(linux_cpu), intent(inout) :: this
    character(len=*), intent(in) :: debug

procedure, public, :: is_online => is_cpu_online

  • private impure elemental subroutine is_cpu_online(this, online)

    Author
    Seyed Ali Ghasemi

    Arguments

    Type IntentOptional Attributes Name
    class(linux_cpu), intent(inout) :: this
    integer, intent(out), optional :: online

procedure, public, :: get_base_freq => get_cpu_base_frequency

  • private impure elemental subroutine get_cpu_base_frequency(this, base_frequency)

    Author
    Seyed Ali Ghasemi

    Arguments

    Type IntentOptional Attributes Name
    class(linux_cpu), intent(inout) :: this
    integer, intent(out), optional :: base_frequency

procedure, public, :: get_cpuinfo_max_freq => get_cpuinfo_max_frequency

  • private impure elemental subroutine get_cpuinfo_max_frequency(this, cpuinfo_max_freq)

    Author
    Seyed Ali Ghasemi

    Arguments

    Type IntentOptional Attributes Name
    class(linux_cpu), intent(inout) :: this
    integer, intent(out), optional :: cpuinfo_max_freq

procedure, public, :: get_cpuinfo_min_freq => get_cpuinfo_min_frequency

  • private impure elemental subroutine get_cpuinfo_min_frequency(this, cpuinfo_min_freq)

    Author
    Seyed Ali Ghasemi

    Arguments

    Type IntentOptional Attributes Name
    class(linux_cpu), intent(inout) :: this
    integer, intent(out), optional :: cpuinfo_min_freq

procedure, public, :: get_scaling_cur_freq => get_cpu_scaling_cur_frequency

  • private impure elemental subroutine get_cpu_scaling_cur_frequency(this, scaling_cur_freq)

    Author
    Seyed Ali Ghasemi

    Arguments

    Type IntentOptional Attributes Name
    class(linux_cpu), intent(inout) :: this
    integer, intent(out), optional :: scaling_cur_freq

procedure, public, :: get_scaling_max_freq => get_cpu_scaling_max_frequency

  • private impure elemental subroutine get_cpu_scaling_max_frequency(this, scaling_max_freq)

    Author
    Seyed Ali Ghasemi

    Arguments

    Type IntentOptional Attributes Name
    class(linux_cpu), intent(inout) :: this
    integer, intent(out), optional :: scaling_max_freq

procedure, public, :: get_scaling_min_freq => get_cpu_scaling_min_frequency

  • private impure elemental subroutine get_cpu_scaling_min_frequency(this, scaling_min_freq)

    Author
    Seyed Ali Ghasemi

    Arguments

    Type IntentOptional Attributes Name
    class(linux_cpu), intent(inout) :: this
    integer, intent(out), optional :: scaling_min_freq

procedure, public, :: get_scaling_governor => get_cpu_scaling_governor

  • private impure elemental subroutine get_cpu_scaling_governor(this, scaling_governor)

    Author
    Seyed Ali Ghasemi

    Arguments

    Type IntentOptional Attributes Name
    class(linux_cpu), intent(inout) :: this
    character(len=*), intent(out), optional :: scaling_governor

procedure, public, :: get_energy_performance => get_cpu_energy_performance_preference

  • private impure elemental subroutine get_cpu_energy_performance_preference(this, energy_performance_preference)

    Author
    Seyed Ali Ghasemi

    Arguments

    Type IntentOptional Attributes Name
    class(linux_cpu), intent(inout) :: this
    character(len=*), intent(out), optional :: energy_performance_preference

procedure, public, :: set_offline => set_cpu_offline

  • private impure elemental subroutine set_cpu_offline(this)

    Author
    Seyed Ali Ghasemi

    Arguments

    Type IntentOptional Attributes Name
    class(linux_cpu), intent(inout) :: this

procedure, public, :: set_online => set_cpu_online

  • private impure elemental subroutine set_cpu_online(this)

    Author
    Seyed Ali Ghasemi

    Arguments

    Type IntentOptional Attributes Name
    class(linux_cpu), intent(inout) :: this

procedure, public, :: set_scaling_max_freq => set_cpu_scaling_max_freq

  • private impure elemental subroutine set_cpu_scaling_max_freq(this, max_freq)

    Author
    Seyed Ali Ghasemi

    Arguments

    Type IntentOptional Attributes Name
    class(linux_cpu), intent(inout) :: this
    integer, intent(in) :: max_freq

procedure, public, :: set_scaling_min_freq => set_cpu_scaling_min_freq

  • private impure elemental subroutine set_cpu_scaling_min_freq(this, min_freq)

    Author
    Seyed Ali Ghasemi

    Arguments

    Type IntentOptional Attributes Name
    class(linux_cpu), intent(inout) :: this
    integer, intent(in) :: min_freq

procedure, public, :: set_scaling_governor => set_cpu_scaling_governor

  • private impure elemental subroutine set_cpu_scaling_governor(this, scaling_governor)

    Author
    Seyed Ali Ghasemi

    Arguments

    Type IntentOptional Attributes Name
    class(linux_cpu), intent(inout) :: this
    character(len=*), intent(in) :: scaling_governor

procedure, public, :: set_energy_performance => set_cpu_energy_performance_preference

  • private impure elemental subroutine set_cpu_energy_performance_preference(this, energy_performance_preference)

    Author
    Seyed Ali Ghasemi

    Arguments

    Type IntentOptional Attributes Name
    class(linux_cpu), intent(inout) :: this
    character(len=*), intent(in) :: energy_performance_preference

procedure, public, :: deselect => deallocate_linux_cpu

  • private pure elemental subroutine deallocate_linux_cpu(this)

    Author
    Seyed Ali Ghasemi

    Arguments

    Type IntentOptional Attributes Name
    class(linux_cpu), intent(inout) :: this

Source Code

   type :: linux_cpu
      character(len=:), allocatable :: debug
      character(len=:), allocatable :: path_cpu
      integer                       :: online
      integer                       :: base_frequency
      integer                       :: cpuinfo_max_freq
      integer                       :: cpuinfo_min_freq
      integer                       :: scaling_cur_freq
      integer                       :: scaling_max_freq
      integer                       :: scaling_min_freq
      character(len=:), allocatable :: scaling_governor
      character(len=:), allocatable :: energy_performance_preference
   contains
      procedure :: set_debug              => set_cpu_debug_switch
      procedure :: is_online              => is_cpu_online
      procedure :: get_base_freq          => get_cpu_base_frequency
      procedure :: get_cpuinfo_max_freq   => get_cpuinfo_max_frequency
      procedure :: get_cpuinfo_min_freq   => get_cpuinfo_min_frequency
      procedure :: get_scaling_cur_freq   => get_cpu_scaling_cur_frequency
      procedure :: get_scaling_max_freq   => get_cpu_scaling_max_frequency
      procedure :: get_scaling_min_freq   => get_cpu_scaling_min_frequency
      procedure :: get_scaling_governor   => get_cpu_scaling_governor
      procedure :: get_energy_performance => get_cpu_energy_performance_preference
      procedure :: set_offline            => set_cpu_offline
      procedure :: set_online             => set_cpu_online
      procedure :: set_scaling_max_freq   => set_cpu_scaling_max_freq
      procedure :: set_scaling_min_freq   => set_cpu_scaling_min_freq
      procedure :: set_scaling_governor   => set_cpu_scaling_governor
      procedure :: set_energy_performance => set_cpu_energy_performance_preference

      procedure :: deselect               => deallocate_linux_cpu
   end type linux_cpu