gpustat-unraid icon indicating copy to clipboard operation
gpustat-unraid copied to clipboard

[ENHANCEMENT] - fileflows icon

Open binarygeek119 opened this issue 2 years ago • 19 comments

fileflows is like unmanic or tdarr the dev is very active and im sure will work with you to add support https://fileflows.com/

binarygeek119 avatar Sep 10 '22 08:09 binarygeek119

@binarygeek119 Can you get me the result of nvidia-smi while fileflows is actively using your GPU? I need to see what process it runs to trigger the app detection. Thanks.

b3rs3rk avatar Nov 08 '22 12:11 b3rs3rk

Tue Nov  8 12:01:32 2022
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 515.76       Driver Version: 515.76       CUDA Version: 11.7     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  NVIDIA GeForce ...  On   | 00000000:43:00.0 Off |                  N/A |
|  0%   49C    P2    26W / 140W |    643MiB /  6144MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A     23351      C   /usr/local/bin/ffmpeg             382MiB |
|    0   N/A  N/A     23367      C   /usr/local/bin/ffmpeg             258MiB |
+-----------------------------------------------------------------------------+

binarygeek119 avatar Nov 08 '22 18:11 binarygeek119

Yeah, I was afraid of that. So many applications just invoke ffmpeg and not an app specific wrapper to ffmpeg or at least a good directory I can key the detection from. I'm going to need more info.

Take the PID from nvidia-smi for each process and execute the following for each process and paste it to me:

cat /proc/<pid>/cmdline

b3rs3rk avatar Nov 08 '22 23:11 b3rs3rk

/usr/local/bin/ffmpeg-fflags+genpts-probesize5M-hwaccelcuda-i/media/media/Movies/Van Wilder Freshman Year (2009)/Van Wilder Freshman Year (2009).mkv-y-map0:v:0-c:v:0hevc_nvenc-rcconstqp-qp20-presetp6-spatial-aq1-map0:a:0-c:a:0aac-ac:a:06-map0:s:0-c:s:0copy-metadata:s:s:0language=eng-map0:s:1-c:s:1copy-metadata:s:s:1title=SDH-metadata:s:s:1language=eng-strict-2/temp/Runner-297c7b3c-4a4a-4979-867c-91ada137e988/a1091c43-b5d2-4f89-8c7b-268848fadc41.mkv

binarygeek119 avatar Nov 09 '22 00:11 binarygeek119

fyi the dev might work with you to fix the ffmpeg path issue. its very active

binarygeek119 avatar Nov 09 '22 00:11 binarygeek119

fileflows is not showing up /usr/local/bin/ffmpeg-fflags+genpts-probesize5M-hwaccelcuda-i/media/media/Movies/The Rookie (2002)/The Rookie (2002).mkv-y-map0:v:0-c:v:0hevc_nvenc-rcconstqp-qp20-presetp6-spatial-aq1-map0:a:0-c:a:0aac-ac:a:06-map0:s:0-c:s:0copy-metadata:s:s:0language=eng-strict-2/temp/Runner-f0d62019-ad2e-43ae-949c-2193370f31bc/0fa83fe0-ad25-4768-8a7a-156f2d8bef4a.m

binarygeek119 avatar Nov 16 '22 16:11 binarygeek119

Wed Nov 16 10:09:36 2022
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 520.56.06    Driver Version: 520.56.06    CUDA Version: 11.8     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  NVIDIA GeForce ...  On   | 00000000:43:00.0 Off |                  N/A |
|  0%   51C    P2    26W / 140W |    640MiB /  6144MiB |      4%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A      6907      C   /usr/local/bin/ffmpeg             253MiB |
|    0   N/A  N/A     30507      C   /usr/local/bin/ffmpeg             385MiB |
+-----------------------------------------------------------------------------+

binarygeek119 avatar Nov 16 '22 16:11 binarygeek119

/usr/local/bin/ffmpeg-fflags+genpts-probesize5M-hwaccelcuda-i/media/media/Movies/Once Upon a Time in Hollywood (2019)/Once Upon a Time… in Hollywood (2019).mkv-y-map0:v:0-c:v:0hevc_nvenc-rcconstqp-qp20-presetp6-spatial-aq1-filter:v:0zscale=t=linear:npl=100,format=gbrpf32le,zscale=p=bt709,tonemap=tonemap=hable:desat=0,zscale=t=bt709:m=bt709:r=tv,format=yuv420p-map0:a:0-c:a:0aac-ac:a:06-strict-2/temp/Runner-71812128-0e48-46f8-88e6-9812d6e14f05/669dd16f-e961-4217-9675-44fce4cb2b60.mkv

binarygeek119 avatar Nov 16 '22 16:11 binarygeek119

I don't really have a test setup, so I'm kind of eyeballing it here. I haven't released anything, but what I've already done will be required anyways. You probably missed the previous commit where I look at the parent process calling the ffmpeg process to try and identify the app?

EDIT: a82f3de55715f52d894791c67db9712f58a47d0f <--- this commit for parent process checking

b3rs3rk avatar Nov 16 '22 18:11 b3rs3rk

@binarygeek119 Same question, does it work?

b3rs3rk avatar Nov 29 '22 12:11 b3rs3rk

fileflows does not show up but etv does.

binarygeek119 avatar Nov 29 '22 15:11 binarygeek119

Okay, we need to see what the full command of the parent process is. I'm guessing it doesn't contain 'fileflows' anywhere which would make it impossible to detect. Do you know how to check the parent process?

b3rs3rk avatar Nov 29 '22 15:11 b3rs3rk

no i dont

binarygeek119 avatar Nov 29 '22 16:11 binarygeek119

Wed Nov 16 10:09:36 2022
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 520.56.06    Driver Version: 520.56.06    CUDA Version: 11.8     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  NVIDIA GeForce ...  On   | 00000000:43:00.0 Off |                  N/A |
|  0%   51C    P2    26W / 140W |    640MiB /  6144MiB |      4%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A      6907      C   /usr/local/bin/ffmpeg             253MiB |
|    0   N/A  N/A     30507      C   /usr/local/bin/ffmpeg             385MiB |
+-----------------------------------------------------------------------------+

So in this case, you would take the PID of the known fileflows-spawned ffmpeg process and find the parent PID:

ps j 6907

The first section of the output will be the Parent PID. All you need to do is the same process as before except use the parent PID instead:

cat /proc/<parent_pid>/cmdline and paste the result. If the string fileflows isn't showing up in the parent PID process somewhere then I'll have to talk to the developer or container maintainer to make it more detectable.

b3rs3rk avatar Nov 29 '22 17:11 b3rs3rk

/dotnet/dotnetFileFlows.FlowRunner.dll--uid162ed1db-9f00-43ed-879f-e5e60ebd152d--libfileb1f23706-020c-4a8a-86ed-cfe134094d3f--tempPath/temp--cfgPath/app/Data/Data/Config/73--cfgKeyd9f018fd-a5f7-4d8c-b0eb-3edac6488974--baseUrlhttp://localhost:5000--docker--server

binarygeek119 avatar Nov 29 '22 18:11 binarygeek119

it might be case sensitive the dev spells the app FileFlows with capital F's

binarygeek119 avatar Nov 29 '22 18:11 binarygeek119

@binarygeek119 You're exactly right. I need to change this function that does the match to stripos which is insensitive and then detection should work.

b3rs3rk avatar Nov 29 '22 19:11 b3rs3rk

@binarygeek119 Did the latest update make FileFlows detection work?

b3rs3rk avatar Dec 05 '22 12:12 b3rs3rk

still not showing up

binarygeek119 avatar Dec 05 '22 14:12 binarygeek119