Scaling to a large number of cores with non-uniform communication latency and unpredictable response time may call for viewing a modern many-core architecture as a distributed system. In this view, the cores replicate shared data and ensure consistency among replicas through a message-passing based agreement protocol. In this paper, we present the first in-depth study of message-passing agreement on many-cores. In particular, we focus on the possibility of such a protocol being non-blocking. We highlight a number of optimizations that are specific to the many-core environment and present 1Paxos, a new non-blocking agreement protocol that takes up the challenges of this environment.