1. A data processing system comprising: a processing unit on which executes a local task of a distributed job, wherein the distributed job has multiple tasks executing on multiple nodes across a network fabric of a global shared memory (GSM) environment; a host fabric interface (HFI) coupled to the processing unit and having: a window allocated to the local task for sending and receiving GSM messages; and processing logic-associated with the processing unit which completes operations of the local task and completes checkpoint processing of the distributed job; wherein the other nodes are coupled to the data processing system via the HFI; and wherein the processing logic further comprises logic for: suspending local task processing and task processing at the other nodes during the checkpoint processing; receiving a plurality of send counts and receive counts from the other nodes executing tasks of the distributed job; summing the send counts of each other node and the local node together to generate a send count total; summing the receive counts of each other node and the local node together to generate a receive count total; comparing the send count total with the receive count total; and when the send count total is not equal to the receive count total, issuing a notification to prevent forward processing beyond the checkpoint by the local tasks and the tasks of the job executing at the other nodes; and when the send count total equals the receive count total, resuming local task processing and task processing at the other nodes.