Profiler under Linux
by AlexanderSLG · in Torque Game Engine · 12/05/2007 (7:46 am) · 2 replies
I've been trying to do some stress testing on our servers, because we're making an MMO and specs say that it should be able to handle a maximum of 1000 users/machine. I don't expect an out-of-the-box build to handle that kind of load, but I'd like to know what do I need to modify for this to be possible, at the very least.
Well, our servers run under linux, and the profiler simply won't work there. It seg-faults when I do profilerDump(), and gdb tells me that this happens in this call:
printFunc("%7.3f %7.3f %8d %s",
F32(100 * (rootVector[i]->mTotalTime - rootVector[i]->mSubTime) / totalTime),
F32(100 * rootVector[i]->mTotalTime / totalTime),
rootVector[i]->mTotalInvokeCount,
rootVector[i]->mRoot->mName);
that's line 492 of platform/profiler.cc. The problem is that rootVector[0]->mRoot is not a valid pointer. In windows this problem doesn't exist. Does anyone know what's the problem, or another way of checking this out?
For what I've seen, most the trouble comes when many player objects interact, so maybe a machine can handle 1000 users, as long as there aren't many in the same server-process instance.
I think the Player object's physics logic will have to be simplified a lot for this, but I'd like to have some numbers to plot a graph
thanks
Well, our servers run under linux, and the profiler simply won't work there. It seg-faults when I do profilerDump(), and gdb tells me that this happens in this call:
printFunc("%7.3f %7.3f %8d %s",
F32(100 * (rootVector[i]->mTotalTime - rootVector[i]->mSubTime) / totalTime),
F32(100 * rootVector[i]->mTotalTime / totalTime),
rootVector[i]->mTotalInvokeCount,
rootVector[i]->mRoot->mName);
that's line 492 of platform/profiler.cc. The problem is that rootVector[0]->mRoot is not a valid pointer. In windows this problem doesn't exist. Does anyone know what's the problem, or another way of checking this out?
For what I've seen, most the trouble comes when many player objects interact, so maybe a machine can handle 1000 users, as long as there aren't many in the same server-process instance.
I think the Player object's physics logic will have to be simplified a lot for this, but I'd like to have some numbers to plot a graph
thanks
About the author
Torque Owner Andy
You might try the gprof patch here in this thread:
www.garagegames.com/mg/forums/result.thread.php?qt=65174