I am using SoftTH without any lag at all running with max settings @ 5760x1080.
Try this SoftTH config...
Code:
;
; SoftTH 1.09 configuration file
; by Kegetys, http://www.kegetys.net
;
[config]
; deviceIDLeft/right: Direct3D device ID's of left and right monitor, or 'auto' for automatic
; secondaryWidth/Height: Left&right monitor resolution, or 'auto' to use same as middle screen resolution
; secondaryRefresh: Refresh rate of left & right monitors, or 'auto' for automatic
; secondaryFormat: Secondary device image format: 'RGB32', 'RGB16', 'RGB16D' or 'RGB32CUDA'.
; uploadMethod: Method used to upload image to secondary card(s): 'blit', 'D3D' or 'D3DCUDA'
; forceAffinity: Set to 1 to force process affinity to all processors/cores.
; borderSize: Size in pixels of frame border between monitors that is discarded
; sideExtraWidth: Width difference between middle and side monitors, or 'auto' to autodetect from desktop resolution
; noHotkeys: Set to 1 to disable all hotkeys
; noOSD: Set to 1 to disable on-screen display when changing settings
deviceIDLeft=auto
deviceIDright=auto
secondaryWidth=auto
secondaryHeight=auto
secondaryRefresh=auto
secondaryFormat=RGB16D
uploadMethod=blit
forceAffinity=0
borderSize=0
sideExtraWidth=auto
noHotkeys=0
noOSD=0
[Direct3D]
; ** Advanced setting for Direct3D games **
; lensCorrection: Lens correction, set to 1 to enable support. >1 to enable by default
; lensCorrectionEdge: Lens correction edge offset
; hideNondefaultDevices: Hides all but the default adapter from the game
; forceHorizontalFOV: Forces horizontal FOV to be three times as wide
; forceResolutionWidth/Height: Forces device to be created with this resolution
; force16bitDepth: Force game to use 16bit depth buffer, can improve performance and reduce memory use
; sleepBeforeRead: Time in ms to sleep before reading back buffer data from video card
; useMultihead: Uses multihead features of primary card if available, can increase performance and reduce memory use
; delayedPresent: When useMultihead enabled, delay primary monitor present to sync with secondary head
; d3d8dll: Path to D3D8.dll/D3D9.dll to use or auto for automatic (system32 dir)
; altResetBehaviour: Do not reset lost main device after secondary device initialization (WDDM crash workaround)
lensCorrection=0
lensCorrectionEdge=0
hideNondefaultDevices=0
forceHorizontalFOV=0
forceResolutionWidth=5760
forceResolutionHeight=1080
force16bitDepth=0
sleepBeforeRead=2
useMultihead=1
delayedPresent=0
autoSquash=0
altResetBehaviour=0
d3d8dll=auto
[hooks]
; Win32 API hooking settings - Used for some extra compatibility and game-specific fixes
; doHooking: Enable/disable hooks in Direct3D, with OpenGL hooks are always enabled
; doScaleMouseCoordinates: Scale mouse coordinates for getCursorPos to fix games which do not handle negative screen coordinates properly
; doScaleFromLeftScreen: Spread out mouse coordinates from left screen to full width
; doScaleWindowRects: Scale focus window WindowRect
; doScaleClientRects: Scale focus window ClientRect
; mouseXoffset: Number of pixels to offset mouse cursor position in X axis, to fix misplaced cursor due to negative screen coordinates. auto = use X resolution
doHooking=1
doScaleMouseCoordinates=0
doScaleFromLeftScreen=0
doScaleWindowRects=0
doScaleClientRects=1
mouseXoffset=auto
; Triplehead screenmodes to add to resolutions list (width multiplied by three and border added)
; width x height x refresh rate in Hz
; 'auto' adds current primary monitor desktop resolution
; Must be last in this file
[modes]
800x600x60
800x600x75
800x600x85
1024x768x60
1024x768x75
1024x768x85
1280x960x60
1280x960x75
1280x960x85
1280x1024x60
1280x1024x75
1280x1024x85
1600x1200x60
1600x1200x75
1600x1200x85
1920x1080x60
auto
EDIT: just a thought... have you tried to run it without SLI enabled?