Unreliable failure detectors enrich asynchronous distributed systems with semantics that are sufficient to solve consensus in the presence of crash failures. Implementing unreliable failure detectors requires a system that provides at least some synchrony, however, typically a known upper bound upon the end-to-end delays of messages. Recently, we introduced an implementation of a perfect failure detector in a novel partially synchronous model, referred to as the Theta-Model, where only the ratio Theta of maximum vs. minimum end-to-end delay between correct processes must be known a priori. In this paper, we present an alternative perfect failure detector algorithm, which is based upon a clock synchronization algorithm for the Theta-Model. It not only surpasses our first implementation with respect to failure detection time, but provides the semantics of an eventually perfect failure detector during system booting as well.