AMP is part of all non-shipping Scaleform builds by default. To remove AMP from Scaleform, make sure SF_AMP_SERVER is undefined in GFxConfig.h, and rebuild the Scaleform libraries. If Scaleform source access is not available, then AMP may be disabled at run-time by calling:
Ptr<GFx::AMP::ServerState> serverState = *SF_NEW GFx::AMP::ServerState(); serverState->StateFlags |= GFx::AMP::Amp_Disabled; AmpServer::GetInstance().UpdateState(serverState);
AMP uses network sockets for communication with the profiler. Therefore, make sure the application links with the appropriate platform-specific network library (Ws2_32.lib for Windows, Xnet.lib for Xbox360, libnetctl for PS3, socket for Linux, etc).
If AMP is the only system using network sockets, it will initialize the socket library, and release it when it is done. On some platforms, releasing the library has no effect if it has been initialized more times than it has been released. In that case, all is fine. On other platforms, however, releasing the network library takes immediate effect, even if that library has been initialized more times than has been released, and AMP may interfere with socket connections used in other parts of the application. In that case, AMP may be forced to skip socket initialization and use a previously-initialized socket library by calling: AMP::Server::GetInstance().SetInitSocketLib(false). This call needs to be performed before AMP has already been initialized.
A limit may be set for the AMP memory heap. When that limit is exceeded, Scaleform is paused until any pending messages have been sent to the profiler. The limit is set by calling AMP::Server::GetInstance().SetHeapLimit().
The AMP server will create a listening network socket on port 7534 by default. A different port may be set by calling: AMP::Server::GetInstance().SetListeningPort().
AMP can be configured to halt execution until a connection has been established with the profiler client. This is useful for obtaining statistics during startup, and is accomplished on startup by calling: AMP::Server::GetInstance().SetConnectionWaitTime.