1. A method of topology mapping in a distributed processing system, the distributed processing system including a plurality of compute nodes, each compute node having a plurality of tasks, the method comprising: initiating, by a sending task, a message passing operation that is unrelated to topology mapping with a receiving task, wherein the message passing operation generates a message that includes topological information for the sending task, wherein the topological information comprises a task rank for the sending task and an identifier for a topological unit upon which the sending task resides; mapping, by the receiving task, the topological information for the sending task wherein mapping the topological information for the sending task comprises creating an association between the task rank for the sending task and the identifier for a topological unit upon which the sending task resides; determining that the sending task and the receiving task do not reside on the same topological unit using an identifier for a topological unit upon which the receiving task resides and the association between the task rank for the sending task and the identifier for the topological unit upon which the sending task resides; and in response to the determination that the sending task and the receiving task do not reside on the same topological unit, using a data communications network between the topological unit of the sending task and the topological unit of the receiving task for subsequent message passing operations between the sending task and the receiving task.