From b25de40e070e31743fd0f44d43611c7bd8229ec8 Mon Sep 17 00:00:00 2001 From: savis <106487343+savisxss@users.noreply.github.com> Date: Thu, 25 Dec 2025 20:37:02 +0100 Subject: [PATCH 1/2] Add missing intrin.h include for __cpuid --- src/EterLib/GrpDevice.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/EterLib/GrpDevice.cpp b/src/EterLib/GrpDevice.cpp index 5b7f81f..e4f3409 100644 --- a/src/EterLib/GrpDevice.cpp +++ b/src/EterLib/GrpDevice.cpp @@ -2,6 +2,7 @@ #include "GrpDevice.h" #include "EterBase/Stl.h" #include "EterBase/Debug.h" +#include bool CPU_HAS_SSE2 = false; bool GRAPHICS_CAPS_CAN_NOT_DRAW_LINE = false; From 25601d4b28d60fff26d2b7b1740c811d5d29c707 Mon Sep 17 00:00:00 2001 From: savis <106487343+savisxss@users.noreply.github.com> Date: Fri, 26 Dec 2025 04:55:23 +0100 Subject: [PATCH 2/2] Enable TCP_NODELAY to reduce network latency --- src/EterLib/NetStream.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/EterLib/NetStream.cpp b/src/EterLib/NetStream.cpp index f5efc76..9705948 100644 --- a/src/EterLib/NetStream.cpp +++ b/src/EterLib/NetStream.cpp @@ -419,6 +419,13 @@ bool CNetworkStream::Connect(const CNetworkAddress& c_rkNetAddr, int limitSec) DWORD arg = 1; ioctlsocket(m_sock, FIONBIO, &arg); // Non-blocking mode + // Enable TCP_NODELAY to disable Nagle's algorithm for lower latency + int opt = 1; + if (setsockopt(m_sock, IPPROTO_TCP, TCP_NODELAY, (const char*)&opt, sizeof(opt)) != 0) + { + TraceError("setsockopt TCP_NODELAY failed: %d", WSAGetLastError()); + } + if (connect(m_sock, (PSOCKADDR)&m_addr, m_addr.GetSize()) == SOCKET_ERROR) { int error = WSAGetLastError();