X-Spam-Check-By: sourceware.org DKIM-Signature: a=rsa-sha1; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=Shh1h7vvcFyhzM764RWWG8iPjuAyXOlCTEygu5OImwbuPqoKLLffkq20stmZ4sbIuS1QponsBNDHlApxzYvfwl7ftE4Bbd8juMw6HN/Jdj9BRVN+gl+EeYZNcORwnUJC3EzgXcwXPcLfzDY2torEjVqSs3y3zasKeeow/9s5q3Y= Message-ID: Date: Mon, 26 Feb 2007 09:47:05 -0500 From: "Lev Bishop" To: cygwin AT cygwin DOT com Subject: Re: does usleep() sleep more than it's supposed to? In-Reply-To: <45E292D6.30906@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <45E292D6 DOT 30906 AT gmail DOT com> Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com On 2/26/07, Carlo Florendo wrote: > I'm writing an application that requires time precisions up to the > microsecond level. However, I put a hard-coded adjustment of > 9000 microseconds since usleep() seems to sleep on the average of > 9000 microseconds more than it's supposed to, at least on my > system. I could work with up to 2000 microseconds for > function overhead but 9000 microseconds seems to be too long. > > I've attached a simple test case that let's usleep() sleep at > 100000 microseconds at each call. > > I've also included the output of cygcheck -svr. > > The output of the attached code on my system is the following: FWIW, I don't see this: Print elapsed time at every call to usleep() Elapsed time (sec:microsec) 0:101000 Elapsed time (sec:microsec) 0:100000 Elapsed time (sec:microsec) 0:101000 Elapsed time (sec:microsec) 0:101000 Elapsed time (sec:microsec) 0:100000 Elapsed time (sec:microsec) 0:101000 Elapsed time (sec:microsec) 0:100000 Elapsed time (sec:microsec) 0:101000 Elapsed time (sec:microsec) 0:101000 Elapsed time (sec:microsec) 0:100000 Print elapsed after the loop() Elapsed time (sec:microsec) 0:100000 -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/