1. A distributed computing system with N processors modeling a neuronal network including simulated neurons and synapses, the processors executing logic stored on at least one computer-readable medium, the logic comprising: when first neurons hosted on respective source processors are simulated to fire to activate synapses to respective second neurons hosted on respective destination processors, sending from each source processor a message indicative thereof to the respective destination processor; executing synchronization using two communication steps including: sending, from each source processor, a message to a single predetermined processor 0 indicating how many messages the source processor sends to each of its respective destination processors; and sending, from the single predetermined processor 0 , respective messages to the destination processors indicating the total number of messages the respective destination processor receives from the source processors, wherein each respective destination processor, based on the message it receives from the single predetermined processor 0 , retrieves messages intended for the destination processor; for at least some simulated neurons, at every computational increment, updating a respective neuronal state; for each of at least some simulated excitatory neurons, establishing a list of input synapses of the neuron that were activated since the most recent simulated firing of the neuron: when an excitatory neuron is simulated to fire, for each input synapse of the list, increasing a respective synaptic weight: for each of at least some simulated neurons, establishing an ordered list of output synapse classes associated with the neuron, a synapse class being defined by a respective simulated axonal delay; when a neuron is simulated to fire, storing in an event queue only a first synapse class that is activated by the simulated firing of the neuron in a nearest future: when the first synapse class is simulated to be activated, clearing the event queue and storing in the event queue a next synapse class; for each simulated input synapse of an excitatory neuron, when the simulated synapse is activated by a spike from its pre-syntactic neuron, decreasing a synaptic weight of the synapse; and for each of at least some simulated synapses, storing information consisting essentially of a synaptic weight, a time step at which the synapse was last activated, a pointer to a next synapse in the list of synapses of a post-synaptic neuron that were activated since the most recent simulated firing of the neuron, a single bit indicating whether the synapse is on the list, and a pointer to the post-synaptic neuron associated with the synapse.