View Single Post
  #1  
Old 11-06-2006, 09:48 PM
eq4me
Hill Giant
 
Join Date: Jul 2006
Posts: 166
Default profiling support in the Source

Seeing an file named gmon.out after I stopped the EQEmu server on my Linux box and remembering what that file is for I had a look in the Unix/Linux makefiles I discovered that profiling support( -pg) it turned on in zone/ and eqlaunch/. I suggest that all people that run Linux/Unix servers get rid of this and recompile asap. Enabling profiling support induces a huge performance penalty!

for zone/makefile
Code:
COPTS=$(WFLAGS) -O -g -pg -march=i686 -pthread -pipe -D_GNU_SOURCE -DINVERSEXY -DFX -DZONE $(DFLAGS) $(MYSQL_FLAGS) `$(PERL_FLAGS)`
to
Code:
COPTS=$(WFLAGS) -O -g -march=i686 -pthread -pipe -D_GNU_SOURCE -DINVERSEXY -DFX -DZONE $(DFLAGS) $(MYSQL_FLAGS) `$(PERL_FLAGS)`
eqlaunch/makefile is similar.

FNW: I would suggest to get rid of this option in all the unix/linux makefiles by default. Imho also the -g option isnt exactly neccessary for the average server but it doesnt induce a performance penalty.

I noticed also that EMuShareMem/ and /common/SocketLib/ are missing the -march=i686 flag but are compiled with -O2. And finally: Is there a reason some of the other stuff is compiled with 'only' -O?

Last edited by eq4me; 11-07-2006 at 06:14 AM..
Reply With Quote