Type | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|
character(len=*), | parameter | :: | version | = | '$Id$' | |
character(len=ESMF_MAXSTR) | :: | logMsg | ||||
character(len=ESMF_MAXSTR) | :: | name | ||||
integer | :: | accDeviceCount | ||||
integer | :: | localPet | ||||
integer | :: | petCount | ||||
integer | :: | rc | ||||
integer | :: | result | = | 0 | ||
integer | :: | ssiId | ||||
type(ESMF_VM) | :: | vm |
program ESMF_VMAccUTest !------------------------------------------------------------------------------ #include "ESMF_Macros.inc" !============================================================================== !BOP ! !PROGRAM: ESMF_VMAccUTest - Unit test for VM Accelerator Support Functions ! ! !DESCRIPTION: ! ! This file contains unit tests for the ESMF Accelerator Support functions. ! The tests are run on multiple processes. !----------------------------------------------------------------------------- ! !USES: use ESMF_TestMod ! test methods use ESMF implicit none !------------------------------------------------------------------------------ ! The following line turns the CVS identifier string into a printable variable. character(*), parameter :: version = & '$Id$' !------------------------------------------------------------------------------ ! cumulative result: count failures; no failures equals "all pass" integer :: result = 0 ! individual test failure message character(ESMF_MAXSTR) :: name character(ESMF_MAXSTR) :: logMsg ! local variables integer:: rc type(ESMF_VM):: vm integer:: localPet, petCount, ssiId, accDeviceCount !------------------------------------------------------------------------ call ESMF_TestStart(ESMF_SRCLINE, rc=rc) if (rc /= ESMF_SUCCESS) call ESMF_Finalize(endflag=ESMF_END_ABORT) !------------------------------------------------------------------------ ! get global vm information call ESMF_VMGetGlobal(vm, rc=rc) call ESMF_VMGet(vm, localPet=localPet, petCount=petCount, rc=rc) !Try getting number of accelerator devices !=========================================== !------------------------------------------------------------------------ !NEX_UTest ! Get number of accelerator devices test write(name, *) "Test getting the number of accelerator devices" call ESMF_VMGet(vm, localPet, accDeviceCount=accDeviceCount, ssiId=ssiId, rc=rc) write(logMsg, *) "Number of accelerator devices =", accDeviceCount call ESMF_LogWrite(trim(logMsg), ESMF_LOGMSG_INFO) write(logMsg, *) "Did not return ESMF_SUCCESS" call ESMF_Test((rc.eq.ESMF_SUCCESS), name, logMsg, result, ESMF_SRCLINE) !------------------------------------------------------------------------ call ESMF_TestEnd(ESMF_SRCLINE) !------------------------------------------------------------------------ end program ESMF_VMAccUTest