torch_model_delete Subroutine

public subroutine torch_model_delete(model)

Uses

  • proc~~torch_model_delete~~UsesGraph proc~torch_model_delete torch_model_delete iso_c_binding iso_c_binding proc~torch_model_delete->iso_c_binding

Deallocates a TorchScript model

Arguments

Type IntentOptional Attributes Name
type(torch_model), intent(inout) :: model

Torch Model to deallocate


Called by

proc~~torch_model_delete~~CalledByGraph proc~torch_model_delete torch_model_delete interface~torch_delete torch_delete interface~torch_delete->proc~torch_model_delete

Source Code

  subroutine torch_model_delete(model)
    use, intrinsic :: iso_c_binding, only : c_associated, c_null_ptr
    type(torch_model), intent(inout) :: model  !! Torch Model to deallocate

    interface
      subroutine torch_jit_model_delete_c(model_c) &
          bind(c, name = 'torch_jit_module_delete')
        use, intrinsic :: iso_c_binding, only : c_ptr
        implicit none
        type(c_ptr), value, intent(in) :: model_c
      end subroutine torch_jit_model_delete_c
    end interface

    ! Call the destructor, if it hasn't already been called
    if (c_associated(model%p)) then
      call torch_jit_model_delete_c(model%p)
      model%p = c_null_ptr
    end if
  end subroutine torch_model_delete