Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
57 commits
Select commit Hold shift + click to select a range
d0afba8
Added BNH Pareto test using polynomial model
mdmitry1 Feb 3, 2026
2671e5e
Added expected results to BNH Pareto test using polynomial model
mdmitry1 Feb 3, 2026
1ffcccc
Merge branch 'master' into poly_pareto
mdmitry1 Feb 3, 2026
1d91264
Enabled running from any directory
mdmitry1 Feb 3, 2026
c9f6ae4
Simplified scripts
mdmitry1 Feb 3, 2026
9d8a85e
Removed code duplication
mdmitry1 Feb 3, 2026
68df796
Added constaint_dora
mdmitry1 Feb 6, 2026
762d445
Improved plotting
mdmitry1 Feb 9, 2026
f9e6bdf
Added dataset generation
mdmitry1 Feb 9, 2026
0ca7141
Added dataset generation
mdmitry1 Feb 9, 2026
615f1ab
Added eggholder test
mdmitry1 Feb 9, 2026
928b5bc
Added README.md to constraint_dora, bnh and eggholder examples
mdmitry1 Feb 9, 2026
5bc4793
Added vizualization and results pretty printing
mdmitry1 Feb 9, 2026
194e8ff
run_eggholder
mdmitry1 Feb 9, 2026
160fee1
Added analytical results to BNH
mdmitry1 Feb 9, 2026
f07ea4e
Added README.md and enabled running all scripts from one top level di…
mdmitry1 Feb 9, 2026
e2c75e9
Mentioned that all functions are black-box
mdmitry1 Feb 9, 2026
465bf61
Added blackbox optimization applications reference
mdmitry1 Feb 9, 2026
abd1fac
Added more details
mdmitry1 Feb 10, 2026
0a58318
Added more details
mdmitry1 Feb 10, 2026
edb194c
Multiple style and commands improvements
mdmitry1 Feb 10, 2026
c86fe4a
Updated README.md after pull request review https://github.com/SMLP-S…
mdmitry1 Feb 10, 2026
009fe99
Updated README.md after pull request review https://github.com/SMLP-S…
mdmitry1 Feb 10, 2026
448aca1
Merge branch 'poly_pareto' of ssh://github.com/SMLP-Systems/smlp into…
mdmitry1 Feb 10, 2026
fee788c
Merged with master
mdmitry1 Feb 10, 2026
52258d6
Merge remote-tracking branch 'remotes/origin/master' into poly_pareto
mdmitry1 Feb 10, 2026
73e6753
Added link to SMLP User Manual
mdmitry1 Feb 11, 2026
10302b0
Added Intel SI test
mdmitry1 Feb 11, 2026
a3a93b9
Added benchmark support
mdmitry1 Feb 12, 2026
ed11830
Added instructions for running test in Docker environment
mdmitry1 Feb 13, 2026
bdb85f1
Replaced with better benchmark - using docker cli instead of docker e…
mdmitry1 Feb 13, 2026
2520cf9
Added plotting
mdmitry1 Feb 13, 2026
fe272ff
Wrapper script for visualizing both results
mdmitry1 Feb 13, 2026
73a7acc
Showing new results instead of expected
mdmitry1 Feb 13, 2026
59e450e
Added script for running all tests
mdmitry1 Feb 14, 2026
61fb680
Changed plotting after review
mdmitry1 Feb 14, 2026
6ec9570
Added resulting plot to the README.md
mdmitry1 Feb 14, 2026
0b9cfdd
Added media
mdmitry1 Feb 14, 2026
e9d2ac1
Moved to Python3.11
mdmitry1 Feb 14, 2026
06d95b3
Updated benchmark - better results with Docker CLI
mdmitry1 Feb 14, 2026
53d7ace
Added Intel test to the README.md
mdmitry1 Feb 14, 2026
83cebde
Improved usability
mdmitry1 Feb 14, 2026
dbb9748
Fixed typos, found by Konstantin
mdmitry1 Feb 15, 2026
214bbfd
Merge with main branch
mdmitry1 Feb 17, 2026
5b1db7f
Moved expected results to directory results
mdmitry1 Feb 17, 2026
172910f
Enhanced README.md based on comments, made by Konstantin
mdmitry1 Feb 17, 2026
e229dab
Merge remote-tracking branch 'remotes/origin/master' into poly_pareto
mdmitry1 Feb 17, 2026
401db78
Added SMLP Tutorial paragraph
mdmitry1 Feb 20, 2026
0382940
Added script for runnning all tests
mdmitry1 Feb 20, 2026
2388e08
Reduced figure sie to fit Docker VNC window size
mdmitry1 Feb 20, 2026
3560e94
Added SMLP introduction PDF
mdmitry1 Feb 22, 2026
c26f543
Added link to SMLP_SHORT_INTRO.pdf to README.md
mdmitry1 Feb 22, 2026
e7af55d
Fixed typos
mdmitry1 Feb 22, 2026
7c40c8b
1. Increased VNC screen resolution
mdmitry1 Feb 22, 2026
17c954e
Added VNC installation instructions for WSL2
mdmitry1 Feb 23, 2026
bcc3e62
1) Added VNC support for WSL
mdmitry1 Feb 23, 2026
d5a3c14
Fixed typo in the filename
mdmitry1 Feb 26, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,11 @@ Starting VNC server within container:
```
./start_vnc
```
Recommended VNC client: `remmina`
Recommended VNC client:

- Ubuntu: `remmina`
- Windows: RealVNC
VNC installation instructions - see [VNC.md](VNC.md)

- Entering Docker container with X11 support on native Linux
```
Expand Down
Binary file added SMLP_SHORT_INTRO.pdf
Binary file not shown.
52 changes: 52 additions & 0 deletions VNC.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
## Step 1:

Download [RealVNC®](https://www.realvnc.com/en/connect/download/viewer)

## Step 2:

Install RealVNC

## Step 3: Forward Port 5900 from Windows to WSL2

### Step 3.1 - in WSL2 window

Get your WSL2 IP address from running below command:
```bash
hostname -I
```

### Step 3.2

Open Command Prompt and choose **Run as administrator** option

### Step 3.3 - in Windows Command Prompt Window

Use the **first IP** in the output (e.g., `172.31.26.155`). All the rest should be ignored
Run the following in **powershell**, replacing `<WSL2_IP>` with your IP:

```powershell
netsh interface portproxy add v4tov4 listenport=5900 listenaddress=0.0.0.0 connectport=5900 connectaddress=<WSL2_IP>
```

Allow the port through Windows Firewall:
```powershell
New-NetFirewallRule -DisplayName "WSL2 VNC" -Direction Inbound -Protocol TCP -LocalPort 5900 -Action Allow
```

Verify the proxy is set:
```powershell
netsh interface portproxy show all
```

## Step 4: Connect with VNC

**Connection should be performed after running** `./start_vnc` **command within Docker container**

1. Launch VNC
Signing in VNC is optional
2. In VNC connect to: `locahost:5900`
- Ignore non-secure connection warning

## Updating the Port Proxy After WSL2 Restart

WSL2's IP address may change after restart. In this case, **Step 3** should be repeated after the reboot
38 changes: 37 additions & 1 deletion docker/python3.11/enter_released_container
Original file line number Diff line number Diff line change
@@ -1,10 +1,46 @@
#!/usr/bin/tcsh -f
set script_path=`realpath $0 | xargs dirname`
set script_name=`realpath $0 | xargs basename`
mkdir -p $HOME/shared
if($#argv > 0 ) then
if("-h" == "$argv[1]" || "--help" == "$argv[1]") then
echo "\nUsage: $script_name [-geom <screen_width>x<screen_length>] [<command>]"
echo "Example: $script_name -geom 1280x1024\n"
exit(0)
endif
endif
if($#argv > 1 ) then
if("-geom" == "$argv[1]") then
set screen_resolution=$argv[2]
echo "User defined screen resolution: $screen_resolution"
shift; shift
endif
endif
if( ! $?TZ ) setenv TZ `readlink /etc/localtime | sed 's@/usr/share/zoneinfo/@@'`
@ p = 5900
@ d = 99
while( `ss -tln | grep -c :${p}` > 0 )
@ p = $p + 1
@ d = $d + 1
end
docker run -e TZ=$TZ -e DISPLAY=:${d} -p ${p}:${p} -v $HOME/shared:/shared -it mdmitry1/python311-dev:latest $*
if(! $?screen_resolution ) then
if(`uname -r` =~ *WSL2*) then
set powershell_exe=`where powershell.exe | awk '{print $1}'`
if($powershell_exe =~ *powershell.exe*) then
set screen_resolution=`$powershell_exe -ExecutionPolicy Bypass -File ${script_path}/getres.ps1 | tail -1 | sed 's/.$//'`
endif
else
xset q >& /dev/null
if(0 == "$status") then
set screen_resolution=`xdpyinfo | grep dimensions | cut -d':' -f2 | awk '{print $1}'`
endif
endif
if($?screen_resolution) then
echo "Automatically defined screen resolution: $screen_resolution"
endif
endif
if(! $?screen_resolution ) then
set screen_resolution="1280x1024"
echo "Using default screen resolution: $screen_resolution"
endif
docker run -e TZ=$TZ -e DISPLAY=:${d} -e VNC_SCREEN_RESOLUTION=$screen_resolution -p ${p}:${p} -v $HOME/shared:/shared -it mdmitry1/python311-dev:latest $*
17 changes: 17 additions & 0 deletions docker/python3.11/getres.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
Add-Type -AssemblyName System.Windows.Forms
$screen = [System.Windows.Forms.Screen]::PrimaryScreen
$source = @"
using System;
using System.Runtime.InteropServices;
public class DPI {
[DllImport("gdi32.dll")]
public static extern int GetDeviceCaps(IntPtr hdc, int nIndex);
[DllImport("user32.dll")]
public static extern IntPtr GetDC(IntPtr hwnd);
}
"@
Add-Type -TypeDefinition $source
$hdc = [DPI]::GetDC([IntPtr]::Zero)
$width = [DPI]::GetDeviceCaps($hdc, 118) # DESKTOPHORZRES
$height = [DPI]::GetDeviceCaps($hdc, 117) # DESKTOPVERTRES
Write-Output "${width}x${height}"
13 changes: 11 additions & 2 deletions docker/python3.11/start_vnc
Original file line number Diff line number Diff line change
@@ -1,9 +1,18 @@
#!/usr/bin/tcsh -f
Xvfb $DISPLAY -screen 0 1024x768x16 >& Xvfb.log &
if($?VNC_SCREEN_RESOLUTION) then
set screen_resolution=$VNC_SCREEN_RESOLUTION
else
set screen_resolution=1280x1024
endif
Xvfb $DISPLAY -screen 0 ${screen_resolution}x16 >& Xvfb.log &
sleep 2
set d=`echo $DISPLAY | tr -d :`
@ p = $d + 5801
x11vnc -display $DISPLAY -forever -nopw -shared -rfbport $p >& x11nc.log &
autocutsel -selection CLIPBOARD -fork
autocutsel -selection PRIMARY -fork
xterm -fn 12x24 &
if(`xset q >& /dev/null ; echo $status` == 0) then
echo "VNC server has started successfully with screen resolution $screen_resolution"
else
echo "VNC server failed - GUI won't work"
endif
Loading