Re: [Cin] PreRoll in Cin Digest, Vol 43, Issue 13,

2022-05-04 Thread Phyllis Smith via Cin
Interesting and quite helpful.  Thanks.

> While I have not tested the current state of the git repository, I thought
> I might add a few comments about testing performance in general from the
> perspective of a retired systems programmer. I am a fan of Cinelerra-GG and
> use it for burning bluray disks so I hope to be able to test the new code
> before long.
>
It will be interesting to hear your results of burning bluray disks --
especially if you have good speakers where you might be able to
differentiate audio options of LPCM and tsMuxer results as I could not.

> ...
> Any settings within a given application, eg cache or pre-roll, will need
> to be measured in a controlled environment which means rebooting the
> computer to clear the file system file cache. Otherwise, any request for
> data that has been previously read may be satisfied from the operating
> systems file cache regardless of the settings in the application.
>
Measuring this in a controlled environment is very useful to a programmer
to improve the code if possible.  The problem is for a user, there is no
such thing as a controlled environment and just how they "feel" is all that
matters.  So the best that can be done is for programmers to take advantage
of the methods you outline.  I do think that the "preroll" of 1.0 seconds
as opposed to 0.5 seconds seems more consistent for me as a user -- it made
me "feel" better!

> ...
> It goes without saying that any use of swap space will radically degrade
> performance unless that swap space is on a solid state drive and the swap
> partition is quite generous in size.
>
I gave up on swap space years ago -- if you have to swap, you may as well
reboot.
-- 
Cin mailing list
Cin@lists.cinelerra-gg.org
https://lists.cinelerra-gg.org/mailman/listinfo/cin


Re: [Cin] PreRoll in Cin Digest, Vol 43, Issue 13,

2022-05-04 Thread Andrew Randrianasulu via Cin
On Wednesday, May 4, 2022, Andrea paz via Cin 
wrote:

> Thank you for the valuable information. I attach the result of
> heaptrack done with the system already started for 1-2 hours and with
> the system just rebooted (...cin.1185)
> [https://www.dropbox.com/s/kko33qk3gvnyni9/heaptrack.cin..tar.gz?dl=0].
> I used a 28s video (h264) with 3 transitions. I simply started
> playback and when I reached the end of the track, I started reverse
> playback. I used Cache size=8192 and Preroll=2.0s. I attach an image
> of the heaptrack graph and the link to the files obtained from
> heaptrack. I'm not very good at interpreting them, except the attached
> graph which clearly shows the transitions problem. I have a PC with
> 32GB of Ram and a swap file of 4GB (I only need it to avoid problems
> with hibernation/suspension).
>
> - Do you recommend increasing my swap file?
> - From the heaptrack results of my test, do you see any memory issues?
> And if so, can they be fixed?
> - Do you have any suggestions on how to fluidify CinGG playback,
> especially with effects and transitions?
>

well, canonical suggestion is to use background rendering over selected
region, I think?

but in general you can try to add '-march=native' and other
machine-specific cflags in adiition to -Ofast in cinelerra/Makefile (Ofast
applied to our scaler functions).

Also, time back Bill changed caching algo so it worked without crashing in
32-bit mode. May be we can conditionally revert those changes for 64-bit
compile...
-- 
Cin mailing list
Cin@lists.cinelerra-gg.org
https://lists.cinelerra-gg.org/mailman/listinfo/cin


Re: [Cin] PreRoll in Cin Digest, Vol 43, Issue 13,

2022-05-04 Thread Richard Nolde via Cin

  
  
Phyllis et al,
  
  While I have not tested the current state of the git repository, I
  thought I might add a few comments about testing performance in
  general from the perspective of a retired systems programmer. I am
  a fan of Cinelerra-GG and use it for burning bluray disks so I
  hope to be able to test the new code before long.
  
  I realize that the posts to which I am referring are not intended
  as exhaustive, definitive test suites, but it can be useful to
  know how the results can be affected. On most operating systems,
  memory requested by an application is not returned to the system
  wide free pool when the application releases it with a call to
  free or delete. You can see this by running a memory intensive
  application in one window and the gnome-system-monitor (or
  equivalent) in another window. Unless there is a great deal of
  demand for free memory by other applications, this memory will
  remain assigned to the first application until that application is
  closed. Therefore, each test should be run from a fresh invocation
  of the test application. Unfortunately, this doesn't guarantee
  that the file system cache is flushed.
  
  Any settings within a given application, eg cache or pre-roll,
  will need to be measured in a controlled environment which means
  rebooting the computer to clear the file system file cache.
  Otherwise, any request for data that has been previously read may
  be satisfied from the operating systems file cache regardless of
  the settings in the application. That said, the effect of the file
  system cache loading will be most or exclusively felt in short
  tests that fit completely or mostly within the file system cache.
  The tests should be run with as few other applications loaded as
  possible to minimize CPU contention and disk access. If there is a
  way to run the test from the command line, this will eliminate
  additional video card specific rendering issues, by which I mean
  presenting the images on the screen. I am not referring to using
  GPU's used to render the video to the files on disk that will be
  read during playback. Of course, if what you are trying to measure
  is the onscreen presentation rate, then a command line test is not
  appropriate.
  
  The terminal commands free and top can be used to see how much
  memory is being allocated to caches. If you run these before and
  after a test, you should see an increase in the memory allocated
  to the file caches. 
  
  You can use the command: cat /proc/meminfo to see how much memory
  is being allocated to file system caches. Note: these values are
  for an older laptop with only 8 GB of physical ram and an 8 GB
  physical swap partition.
  
  cat /proc/meminfo
  MemTotal:    7802112 kB
MemFree: 2199052 kB
MemAvailable:    5405988 kB
Buffers:  175436 kB
Cached:  3361856 kB
SwapCached:    0 kB
Active:  1470940 kB
Inactive:    3556264 kB
Active(anon):   4204 kB
Inactive(anon):  1616348 kB
Active(file):    1466736 kB
Inactive(file):  1939916 kB
  
swapon
NAME   TYPE  SIZE USED PRIO
/dev/sda3  partition 7.9G   0B   -2
/dev/zram0 partition 7.4G   0B  100

See the URL below for a description of the zram0 swap partition.
https://www.kernel.org/doc/html/v5.3/admin-guide/blockdev/zram.html
  
  It goes without saying that any use of swap space will radically
  degrade performance unless that swap space is on a solid state
  drive and the swap partition is quite generous in size. Recent
  versions of Fedora, ie 33 and newer, seem to favor a compressed
  swap space and/or using memory compression, which can have a large
  impact on memory intensive operations. My recommendation is to use
  a dedicated, on disk (SSD) swap partition that is twice the size
  of physical memory or larger depending on the memory requirements
  of your application. I use the Fotoxx graphics application to make
  very large panoramas and have frequently used up to 40 GB of swap
  space on a system with 16 GB of physical ram. Cinerlerra is
  nowhere near that memory hungry, but it is essential to avoid
  running into situations where the kernel will have to evict code
  pages or data from the cache. The output of the swapon
  command indicates that the compressed zram0 block device has a
  much higher priority than the physical disk based swap partition.
  This can negatively impact file caching if your on disk swap
  partition is fast and your memory is older, slower memory. It may
  be worth trying to limit the size of