Here are some things to consider related to operating system performance:
Distributed transactions can add overhead. Before a transaction is completed, an acknowledgment (ACK) must be received from the remote server. Delays with the remote server or with the network between the servers should be investigated.
If a BizTalk service fails to start after restarting, it's possible that a third-party/custom service could be causing this. On Windows Server 2008, you can try setting the BizTalk service for Automatic (Delayed Start).
Mismatched duplex settings between computers running BizTalk Server and SQL Server have caused performance issues. The network interface card (NIC) card drivers should also be current.
Any disk issues, especially on the remote computer running SQL Server, should be resolved. This sometimes requires the hardware vendor to analyze the situation. You can use Performance Monitor to determine if there are disk issues.
General performance problems including high memory usage and/or high CPU should be resolved. If high memory is normal, consider using a 64-bit server. If high CPU is also normal, consider new/additional hardware.
If you suspect a third-party/custom service could be causing problems, you can use the Services tab in msconfig to disable a handful of third-party services. Restart, and see if the issue persists. You may have to do this several times.
The Physical Disk, Logical Disk and Processor Performance Monitor objects can be used to determine if there is a disk issue. The bottleneck-detection counters are described in
Capturing memory dumps of a high memory or high CPU process can be used to determine root cause. For debug analysis, you can contact Microsoft Customer Service and Support (CSS).