running process lasso through wine

Started by justaquestion, April 26, 2023, 07:54:58 AM

Previous topic - Next topic

justaquestion

im running process lasso using proton and the only programs that show up are through the wine environment. I notice if I open up the config file. notepad.exe shows up. I can also see exes. I try to open them they fail to open. I did accidentally make the mistake of opening one of the programs with notepad accidentally. in any case is there a way to open a program through the wine file explorer so i can use process lasso with it. currently I don't have access to any programs. I thought possibly all programs run through wine could be controlled but im seeing no cpu usage in process lasso from them. granted my test program was among us.

justaquestion

never mind I got it to work. you locate explorer.exe on disk and run them from there. can process lasso run without performance counters. Ive used process watchdog on a program running through process lasso on linux. there seems to be some hitching related to the use of process watchdog but I can't see the process running under the log.

Jeremy Collake

We can not attest to how well Process Lasso will under WINE. However, it is an area of R&D, so I'll update this thread with any news.

The Process Governor should run fine without Performance Counters. However, the GUI (ProcessLasso.exe) may fail to show certain metrics, primarily in the graph and statusbar.

I recommend turning on menu item 'Options / Log / Log Launches' to verify that ProcessGovernor.exe has the same visibility into running WINE processes that you see in the GUI. You may also need to change the startup method of ProcessGovernor.exe to that of a normal process, instead of system service. To do that see this post.
Software Engineer. Bitsum LLC.

justaquestion

when i originally booted into process lasso. i set everything to not start automatically and don't run as a system service. process lasso essentially runs just fine although cpu priority shows up in the logs while io priority does not. Ive modified some things in the linux kernel to try to reduce turbo boost but mostly failed. although some tlp settings basically did the same thing. chatgpt helped me turn off the nvidia gpu and i had been playing witcher 3 just fine. with klonoa ill try testing it but it wanted me to install it since it wasn't installed on my linux steam. i guess i could run the witcher 3 with process lasso through steam because it didn't have drm. i also tried to run burnout paradise the ultimate box it crashed with a code indicating it was in the wrong directory. however launching it normally with proton also caused it to crash. chatgpt gave me a script i can use to apply my watchdog settings with ionice but its kind of a pain to use. i suspect klonoa will work if installed to the same directory that linux steam uses. in the witcher 3 i was getting about 23 watts at 30 fps with ultra settings in witcher 3 classic. hope to pickup sonic frontiers. i have some ideas for how to improve the performance but i suspect i should be using ionice since io priorities are probably not being applied and that really is a neat feature of the program. I guess I can report if it actually works with steam games. among us loaded through process lasso but it wouldn't allow me to paly online essentially acting like it wasn't opened through steam.

justaquestion

here is the script for what I call process linux. basically there are two scripts. defaultmem.sh and defaultcpu.sh you copy and paste from defaultmem.sh into a new script if you want to control disk usage and cpu. and you copy from defaultcpu.sh if you just want to control cpu usage. here is the program. the values used are boilerplate. the program was pretty much written by chatgpt. although it was having trouble writing some of it. the program really needs to be run as sudo. but its never been a problem. I'm making a youtube video for it but it's basically going to be just what i've written here.

#!/bin/bash

# Ask for disk usage in MB
read -p "Enter disk usage threshold (in MB): " disk_usage_mb

# Convert MB to KB
disk_usage=$(($disk_usage_mb * 1024))

#!/bin/bash

# Get list of open programs and their PIDs
programs=$(sudo lsof -t | xargs ps -p)

# Display list of open programs and their PIDs
echo "Open programs:"
echo "$programs"

# Ask user which program to modify
read -p "Enter the PID of the program you would like to adjust (0 to exit): " pid

# If user enters 0, exit the script
if [[ $pid -eq 0 ]]; then
  exit 0
fi

# Ask user for new value of p variable
read -p "Enter the new value of p variable: " p

# Update the p variable in the script
sudo sed -i "s/^p=.*$/p=$p/" "$0"

# Ask user for process priority level
read -p "Enter process priority level (high/idle): " priority

# Set process priority level using 'nice' command with sudo
if [[ "$priority" == "high" ]]; then
  sudo renice -n -20 -p "$pid"  # set high priority
elif [[ "$priority" == "idle" ]]; then
  sudo renice -n 20 -p "$pid"  # set idle priority
fi

while true; do
  # Get CPU usage of specified program
 cpu=$(top -b -n 1 -p "$pid" | awk 'NR>7 { sum += $9; } END { print sum; }')


  # Get path to executable file associated with specified PID
  exe=$(readlink "/proc/$pid/exe")

  # Get directory containing executable file
  directory=$(dirname "$exe")

  # Get disk usage of directory containing executable file
  disk=$(df -k "$directory" | awk '/\// { print $3 }')

  # Adjust I/O priority based on CPU and disk usage
  if (( $(echo "$cpu >= 5" | bc) )); then
    sudo ionice -c 3 -p $$  # set I/O priority to low
  elif (( $disk < $disk_usage )); then
    sudo ionice -c 1 -n 0 -p $$  # set I/O priority to high
  fi

  # Wait for 1 second before checking again
  sleep 1
done