Would a large amount of RAM increase my oscistudio performance when transferring from Blender?


#1

Ok, so I have an animation im sending from Blender to OsciStudio, and I left it running overnight because it was 500 frames and it was taking a long time to send. I woke up to my computer being out of memory, and Oscistudio taking up 100GB of memory (And climbing), yet my system only has 32GB of RAM.

Im wondering if I should upgrade the amount of RAM I have to something insane like 128GB or maybe even 256GB? Would that make this process go faster for larger animations?


#2

holy shit. what are YOU up to? :smiley: :smiley: :smiley:

what’s your mesh? you might want to decimate first! :slight_smile:


#3

ps. i’m not sure that memory means much.

open activity monitor, select the “memory” tab. make sure all these four columns are visible:

  • memory (might line up with your popup)
  • private memory
  • shared memory
  • common

can you send me a screenshot of that? 100gb is probably virtual memory, but i’m not sure.

if you want to privately share the blender file, i’m happy to look into it on my computer!


#4

LMAO! :joy: It WAS decimated!! I did a 0.1 Decimation, but im gonna try to go even further on my next run.


#5

I didn’t take a screenshot of it, but I DID open my activity monitor to confirm the amount and it also said 100 GB. It made it all the way up to 100.70GB and my computer was running so slow (I wanted to do other things as well) that I force quit it already, so I can’t get more granular than that unfortunately :confused:

The fact that the amount of memory continued to slowly climb told me that it was still doing its thing so I was hesitant to quit it, but eventually, it just wasn’t worth it for me to lose access to my computer, so I had to pull the plug.

Im 100% sure it was virtual memory, as I had checked my hard disk space, and I had about 100GB less memory available.

I’d happily share the blend file with you. It’s nothing crazy (Or so I thought! :joy: ), but this is not the first time I believe ive run into this issue with larger animations, so if me upgrading my desktop PC to have 256GB of RAM would allow me to more quickly pump out large animations without my system seizing up, then I would do it without hesitation. This was just me on my Mac doing tests and experimenting.

Edit: The blend file is about 7GB so im not sure where a good place to upload something of that size would be.

Technically the size comes from doing a grease pencil bake on it though, and it’s using an alembic that’s 700MB, so I could give you the unbaked blend and the alembic and you could bake it yourself.


#6

sorry, but 7gb is a TON for 500 frames, that’s 14mb per frame.

like, the bandlimit of oscilloscope music is 192k on a professional dac, so you cannot gain anything beyond 192.000 vertices. in fact, i’d argue you cannot gain anything above 10000 vertices.

but 14mb sounds like low millions of verts.

can you post a screenshot and/or blender file of a single frame?

best,
hansi.

ps. don’t get me wrong. it sounds absurd to me, but i’m not here to tell you what to do. let’s see if we can get that file converted :smiley:


#7

Oh for sure! Im not gonna pretend like I have the best idea what’s going on, but I get pretty decent results (usually)

You’re 100% correct in everything you’re saying, but that’s the grease pencil baking that takes up so much space. I tried adding a second decimate with 0.1 on it, and I don’t think it helped much unfortunately, as the size went from 6.7GB to 6.4GB.

But my workflow is to have some kind of animation, use grease pencil to bake the animation, then use VAMP to convert it to a format that oscistudio can handle. I bump up the max vertices to oscistudio from 2k to 10k, and it sends just fine. That is to say, I can visually see the still in oscistudio, so there are less than 10k vertices per frame. (How many there are though, I do not know. I suppose I could try lowering it until it no longer sends the still frame over)

The only issue im having is sending all of the data over. Im running it again, but it’s not going to finish until tomorrow, where I very well will probably wake up to it taking up 100GB of my memory, but I guess that remains to be seen.

Anyways, im sure im doing things wrong, or in a way that is not supposed to be done, but Im happy with the results I get. Only thing im not happy with is that sometimes it’s so large that the software tends to hang, and I don’t know if it’s frozen, or ever going to work, as it’s not designed with this level of abuse in mind, and so there’s no loading bar or anything. It’s basically, completely frozen, and sometimes if I let it sit long enough, it just works, and sometimes I lose patience and force quit.


#8

ok, sounds good.

500 frames at 10k verts should be doable. maybe you just found a bug :slight_smile:


#9

Ok, well it finished, and it looks like I’m right back where I was earlier this morning when I made the thread. Im gonna let this run overnight, but it’s looking now like the number is just gonna keep climbing until I stop it.


#10

Yeah, it’s on its way to 100GB.

I’m just gonna pull the plug on it. Try a different approach. Technically Im using A6, so maybe I’ll try it again with A7 and see if that solves it.

If not, I’ll just decimate it some more.


#11

Unfortunately this brings me to another problem (I think). There may be a solution, but Im using blender 2.93.0 because that’s the version of blender that works with VAMP, and VAMP hasn’t been updated, but I just read on the VAMP GitHub that its confirmed to work on Blender 3.65 and 4.01, so Im gonna go download one of those specific versions and try again with Oscistudio A7.

Edit:

Got it all working in Blender 3.65

Trying again for a third time before I give up on this particular animation.


#12

Ok, so im on the newest version of OsciStudio to rule out any issues, and nothings changed. I’m curious what is actually occurring here internally within oscistudio @kritzikratzi ? What exactly is being written to my drive in the amount of 38-100GB? Perhaps I’ll let it run even longer this time and see what happens.

This isn’t a criticism or a feature request, I only seek to understand.

UPDATE: IT WORKED!! Woohoo!! Awesome!


#13

thanks for all your updates.

ok, well what i assume happens, is that something goes wrong inside oscistudio. i see a few options

  1. it’s keeping certain memory around for too long, and releasing it too late (after the whole animation is done)
  2. it’s not releasing certain memory at all
  3. ??? happens :smiley:

the result is always the same: oscistudio requiring so much ram, that the operating system starts paging out the ram to disk. with ssds this is not too bad anymore, but still it slows down the program considerable.

i’ll look into it!

i’ll pm you a nextcloud link with an upload option, if you want to send me your file you can do it there.


#14

hi!

coming back to this: you are using VAMP only to convert the blender LineArt thing into a format that oscistudio can process?

even though you solved it, i could look into supporting the line art modifier, i had not heard about it to be honest.


#15

Oh yeah, that would be awesome if you included that functionality into OsciStudio! I’m surprised you hadn’t heard about it though. Ive seen conversations between you and the developer. (Chris Allen/zippy731) . It’s a very useful add-on and totally changed how I approach using OsciStudio!


#16

yea, i’m aware of vamp, but my focus went far away from converting meshes. i guess that’s why i missed the details about it (particularly the builtin lineart thing)


#17

little update: i’ve made a change so that processing blender meshes doesn’t block oscistudio anymore. also it’ll process live changes a bit faster (won’t change anything when sending animations)

i have found out much about your specific issue yet, … one thing at a time :slight_smile:


#18

little update to the little update: there is now also a button in oscistudio to cancel processing the current animation sent from blender. this can come in handy when you sent a large animation by accident.

it might take a little while to cancel, but it might help a bit in certain situations.

as always: there is no planned release date, but this will be in the next version. now i’ll finally have time to get into the actual problem :slight_smile:


#19

ok, can you tell me a bit more about what you did? because i see quite different behavior. i did this:

  1. opened your file in blender 3.5.1 with oscistudio and vamp plugins enabled
  2. in vamp, set the target to “VAMP” and click “VAMP ONCE”
  3. hide “Collection” and “VAMP”, leaving only “_vampOutput” active
  4. connect to oscistudio. set the max vertices to 50,000 and press “send animation”

it’s not yet done, but memory is steady at 2gb and when i debug into it i can already see that each frame gets 4 objects: flatSliced, flatSilhouette, silhouetteFinal and slicedFinal. traceFinal and traceFinalMesh are empty in blender (this might have to do with my vamp settings?)

blender require 15gb to load the file :smiley:

well, please let me know if i’m testing correctly!


#20

ok, i know i wrote a lot… sorry about that.

so, here’s the summary:

  • cancel button while processing of blender data is active
  • progress of animation processing is visible
  • i have not found your behavior with the high cpu usage though. if you wanna help me out:
    • either a short video of you opening the file you sent me, and clicking the clicks leading up to “send animation”
    • prepare a file which is fully preprocessed (no vamp etc.) where i can just click “send animation”

https://www.youtube.com/watch?v=Cy6W4H4c_AQ