Computer Chess Club Archives


Search

Terms

Messages

Subject: Implementation of the abs() function [o.t.]

Author: Omid David Tabibi

Date: 07:17:38 07/05/03


In Genesis I heavily use the abs() function, and so tried to optimize it.
Instead of using the abs() function defined in <math.h>, I wrote the following
fucntion:

long abs(long x) {
    long y;
    y = x >> 31;
    return (x ^ y) - y;
}

Testing it using a profiler, I found out that my implementation is about twice
slower than the math.h implementation of abs(). I haven't looked at the
implementation in math.h, but I can't see how a more optimized version of abs()
can be written.

Any ideas?



This page took 0.08 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.