129 lines
3.7 KiB
Batchfile
129 lines
3.7 KiB
Batchfile
@echo off
|
|
title RFCP - Detailed Preset Quick Test
|
|
setlocal EnableDelayedExpansion
|
|
|
|
echo ============================================
|
|
echo RFCP - Detailed Preset Quick Test
|
|
echo ============================================
|
|
echo.
|
|
echo This tests ONLY the Detailed preset to check
|
|
echo if NumPy vectorization is working.
|
|
echo.
|
|
echo Expected: ^< 90 seconds (was 300s timeout)
|
|
echo ============================================
|
|
echo.
|
|
|
|
set API=http://127.0.0.1:8888
|
|
|
|
:: Check if server is running
|
|
echo [1/4] Checking server...
|
|
curl -s -o nul -w "HTTP %%{http_code}" %API%/api/health >nul 2>&1
|
|
if %ERRORLEVEL% NEQ 0 (
|
|
echo ERROR: Server not responding! Start rfcp-debug.bat first.
|
|
pause
|
|
exit /b 1
|
|
)
|
|
echo Server OK
|
|
echo.
|
|
|
|
:: Get baseline
|
|
echo [2/4] Capturing baseline...
|
|
for /f %%a in ('powershell -NoProfile -Command "(Get-CimInstance Win32_OperatingSystem).FreePhysicalMemory"') do set /a BASE_FREE=%%a/1024
|
|
for /f %%a in ('tasklist /FI "IMAGENAME eq rfcp-server.exe" 2^>nul ^| find /c "rfcp-server"') do set BASE_PROCS=%%a
|
|
echo Free RAM: %BASE_FREE% MB
|
|
echo RFCP procs: %BASE_PROCS%
|
|
echo.
|
|
|
|
:: Run test
|
|
echo [3/4] Running Detailed preset (5km, 300m)...
|
|
echo Start: %time%
|
|
echo.
|
|
|
|
curl -s -w "\n HTTP: %%{http_code}\n Time: %%{time_total} seconds\n" ^
|
|
-X POST %API%/api/coverage/calculate ^
|
|
-H "Content-Type: application/json" ^
|
|
-d "{\"sites\": [{\"lat\": 50.45, \"lon\": 30.52, \"height\": 30, \"power\": 43, \"gain\": 15, \"frequency\": 1800}], \"settings\": {\"radius\": 5000, \"resolution\": 300, \"preset\": \"detailed\"}}" ^
|
|
-o detailed-result.json
|
|
|
|
echo.
|
|
echo End: %time%
|
|
echo.
|
|
|
|
:: Check result
|
|
echo [4/4] Analyzing result...
|
|
|
|
:: Check for timeout
|
|
findstr /C:"timeout" detailed-result.json >nul 2>&1
|
|
if %ERRORLEVEL% EQU 0 (
|
|
echo.
|
|
echo ============================================
|
|
echo RESULT: TIMEOUT
|
|
echo Vectorization needs more optimization.
|
|
echo ============================================
|
|
echo.
|
|
type detailed-result.json
|
|
goto :cleanup
|
|
)
|
|
|
|
:: Check for success (has "points")
|
|
findstr /C:"\"points\"" detailed-result.json >nul 2>&1
|
|
if %ERRORLEVEL% EQU 0 (
|
|
echo.
|
|
echo ============================================
|
|
echo RESULT: SUCCESS!
|
|
echo Detailed preset completed without timeout!
|
|
echo ============================================
|
|
echo.
|
|
|
|
:: Extract stats
|
|
echo Extracting stats from result...
|
|
|
|
:: Count points (rough)
|
|
for /f "tokens=2 delims=:," %%a in ('findstr /C:"\"count\"" detailed-result.json') do (
|
|
echo Points calculated: %%a
|
|
)
|
|
|
|
:: Get computation time
|
|
for /f "tokens=2 delims=:," %%a in ('findstr /C:"\"computation_time\"" detailed-result.json') do (
|
|
echo Computation time: %%a seconds
|
|
)
|
|
|
|
goto :cleanup
|
|
)
|
|
|
|
:: Unknown result
|
|
echo.
|
|
echo RESULT: UNKNOWN
|
|
echo Check detailed-result.json manually
|
|
type detailed-result.json
|
|
|
|
:cleanup
|
|
echo.
|
|
echo ============================================
|
|
echo POST-TEST CLEANUP CHECK
|
|
echo ============================================
|
|
|
|
timeout /t 3 /nobreak >nul
|
|
|
|
for /f %%a in ('powershell -NoProfile -Command "(Get-CimInstance Win32_OperatingSystem).FreePhysicalMemory"') do set /a END_FREE=%%a/1024
|
|
for /f %%a in ('tasklist /FI "IMAGENAME eq rfcp-server.exe" 2^>nul ^| find /c "rfcp-server"') do set END_PROCS=%%a
|
|
|
|
set /a MEM_DIFF=BASE_FREE-END_FREE
|
|
|
|
echo Free RAM: %END_FREE% MB (was %BASE_FREE% MB, diff: %MEM_DIFF% MB)
|
|
echo RFCP procs: %END_PROCS% (was %BASE_PROCS%)
|
|
|
|
if %MEM_DIFF% GTR 500 (
|
|
echo.
|
|
echo WARNING: Memory not fully released!
|
|
)
|
|
|
|
if %END_PROCS% GTR %BASE_PROCS% (
|
|
echo.
|
|
echo WARNING: Extra RFCP processes still running!
|
|
)
|
|
|
|
echo.
|
|
echo ============================================
|
|
pause
|