5 Syphon Receivers continually crash Isadora - Can it handle the GPU load or is it something else?
-
Ryan:
I will do this in the next week or so, and walk it through again. It might take up to two weeks actually, but I will certainly be working on it. Everyone I know is scratching their heads over this one. Stay tuned.Ellen -
I don't know about the crash, but I would not use the chop pixel actor in this case. Just use the izzymap editor to select and warp your images. it may help with video quality.
Also, if you're testing, do as DusX suggested to narrow down the cause of the crash. -
I'd defiantly create a basic patch with 5 Syphon inputs and attach each input individually and see what happens
It *could* be a name thing; do any of them have any unique characters in the Syphon name? Just thought. If you can receive 5 no problems then its the overall patch perhaps?I have just tried creating 5 Simple Server applications (I duplicated the app) and it crashes when I attached the second one - but I think that was because the name was the same on all apps - if that makes sense? -
Graham:
The first time around I did do that, and corrected it by naming each one. It still crashed. Please remember that this is receiving Syphon info from Max 7.1\. In Syphon it appears perfect, I tested that, but who knows what goes on on the backend on the code level that none of us except maybe Mark and Ryan can see, it should be seamless but it is not. I like Ryan's thoughts about Preferences. What I have found about Preferences is its memory is rather unforgiving, and I have already run into one or two instances where that memory was difficult - it was like a legacy problem that kept reoccuring.And Sager, I had to use chop pixel because of the 360 screen, and having to have all 5 screens from Max leave Max as one composite screen (in order to avoid the crash and use just one Syphon Server) and then be reassembled in Isadora and sliced 5 ways . I will take a look at the izzymap editor just found the tutorial on it here - http://troikatronix.com/support/kb/composite-mapping-tutorial/I am also working with my MAX/Msp cohorts to walk it backwards on their end. Again, because of the use of the Emotiv Epoc brainwave headset, MAX is the only way to go.This is a very difficult one, for sure.Ellen -
Dear @ellenvolumetric,
Well, as I said, if you want me to really give you some understanding of what's going wrong, so a member of the team can work with you to gather the crash reports. I'll have a look as soon as I see them; that's the only way to really find out what's going wrongBest Wishes,Mark -
Mark:
I did: Please see below. Ryan is from Troikatronix Bug Report.I am working virtually between Hong Kong, NY and St. Petersburg, Russia with my team. I need to coordinate everyone on all ends and times zones to problem shoot it, a little like herding cats. My MAX programmer is going to see if he can make heads or tails of it on his end by tracing the MAX to Syphon to Isadora aspect. We will meet virtually next week with other team members and see if we can figure this out live time. I'm all over it, just takes time to unscramble.This issue is not going to go away, and we will definitely let you know what we discover. I will keep meticulous notes to try to figure out the problem.Ellen[DusX](http://troikatronix.com/troikatronixforum/profile/149/DusX)[](http://troikatronix.com/troikatronixforum/discussion/comment/15893/#Comment_15893) [Flag](http://troikatronix.com/troikatronixforum/discussion/flag/comment/15893/149/dusx/L2Rpc2N1c3Npb24vY29tbWVudC8xNTg5My8jQ29tbWVudF8xNTg5Mw--)[](http://troikatronix.com/troikatronixforum/discussion/votecomment/15893/voteup/PD1GG1OE0UYE/)0[](http://troikatronix.com/troikatronixforum/discussion/votecomment/15893/votedown/PD1GG1OE0UYE/)Have you tried building a new test file that only accepts the 5 streams? How about deleting your isadora preferences?[Troikatronix Technical Support Staff] Bug Report/Feature Request FORM
aka: Ryan Webber | http://www.dusxproductions.com | Win 8.1/10 64bit, i7-4810mq, 16gb, nVidia GTX 870m | located in Ontario Canada. -
Ryan:
How would deleting the preferences file help? Could you explain your reasoning, or what you understand about Preferences (specifically what part) that makes you think that might be the culprit?I have looked very carefully at the Apple crash report, and from what I can see in the endless list of what happened during the crash report is it is kernel conflicts, threading bomb outs, and basically a general melt down. I am not a developer, but I found this most interesting:_Thread 0 crashed with X86 Thread State (32-bit) __Logical CPU: 4__Error Code: 0x00000004__Trap Number: 14_What this tells my uninformed eye is that the CPU had a meltdown. Considering I have a super duper state of the art MacBook Pro, I do not think that it had to do with Isadora Preferences, though I could be wrong. I think it had to do with the five Syphon streams. The MAX/Syphon aspect worked fine. The Syphon/Isadora part caused the crash. There was some kind of timing/threading/kernel freak out.This has lead to an entire revamping of my system architecture. Along with my tech team we are going to implement a 3 computer networked load, one computer dedicated just to the Brain Computer Interface, and the other two will be splitting the MAX/Syphon Isadora loads to 2 on an iMac and 3 on a Mac Pro via a LAN. This will take a few weeks to set up. Then we will see if it was a Preferences problem or a CPU load issue.If I get crashes on a 2/3 Syphon set up in Isadora, this will be very worrisome.Ellen -
I mention the preferences only because, clearing the file can often solve unusual problems.
Often things that are related to driver or hardware changes. These things sometimes setup conflicts with previously set stage settings in Isadora.Its generally a good starting place, setting the slate clean if you will.As for the bit of stack trace reporting.. its difficult to read much into that small segment.@mc_monte , can you try setting up a 5 stream syphon file.I believe you are better equipped that I am at the moment to recreate this setup. -
Please in the future post this type of extensive information in an attached file.This creates a bit of a mess, and makes it difficult for other forum users to contribute to the questions. Additionally, please be sure to provide these details to your Support technician via the Troikatronix support system.Since it seems that the crash occurred during the preparation of the frame for drawing. My best guess is a system resource issue. I would suggest watching CPU, GPU and System memory carefully to see if any aspect is being taxed out. Specifically, since you are able to run a workaround at a lower resolution, It seems to me that GPU memory might be running low/out. -
Ryan:
I have been working with Monty at Troikatronix on this, and basically what we concluded, after some time, is that 4 Syphons were not compatible with Isadora. It is not my videos (photo jpeg), Max/Msp (runs just fine) Isadora (works fine with video) but seems to be Syphon. The food chain combination of using 4 Syphon receivers is just not going to work. I was able to make them work using a super charged iMac, but Isadora crashed 3 out of 5 times. When it did not crash, the rendering times on the video was terrible, and they either gagged or just plain froze. Monty tried his own set up with multiple Syphons and he experienced lag on video rendering as well.So, yes, it was a system resource issue in the end. It is not an issue of resolution, the resolution was very low. It is how Syphon itself, with more than one Syphon Receiver works in Isadora. At this point in time, it basically doesn't.Now I am reconfiguring my entire set up taking this into account.So the solution is there is not solution, at least not for this configuration.Ellen -
@ellenvolumetric, @DusX, @mc_monte,
(Note to ellenvolumetric: it would be very much appreciated if you tried the test setup provided in isadora-four-syphon-test-1.zip.)I want to revisit this problem. For sure, there shouldn't be a limit of four Syphon receivers. But some basic tests do not exhibit the problem for me.To start this discussion again, I built four slightly different versions of the "Simple Server" application that is provided with the Syphon SDK. I would consider this the baseline test, given that this is the application created by Syphon's creators to test Syphon itself. Each application has a unique color for the center part of the Syphon logo.Then I ran all four copies while running the test file four-syphon-simple-server-receivers.izz. It's been running for about ten minutes now without issue. You can try this yourself by downloading "isadora-four-syphon-test-1.zip" This gives at least a little credence to the idea that the problem is not in Isadora. (Not trying to pass the buck here... for sure, if there is a problem in Isadora I want to find it and fix it.)Then I set up another test with two copies of Isadora. One was serving four different images, and the other was receiving them. Again, there was no issue here. To perform this test, you need to duplicate the Isadora application itself (this allows you to have two separate copies open) and then open "four-syphon-servers.izz" with one copy of Isadora, and "four-syphon-receivers.izz" with the other copy. You can try this yourself by downloading "isadora-four-syphon-test-2.zip" Again, for me, this ran without issue.I tested this in v2.2\. It is also possible that this problem existed in v2.1 and has been resolved through other fixes.I will put the team back on this issue, because I want to figure out what the problem is here. If there is a problem in Isadora, we will solve it.Best Wishes,MarkP.S. Do people know of other Syphon server applications we can easily use to test this issue?6fec89-isadora-four-syphon-test-2.zip 76d92a-isadora-four-syphon-test-1.zip
-
One other note: I deleted the long crash report from this thread, as it distracts from the discussion. Crash reports like this are really useful, but as @DusX indicated, if you're going to post them, please .zip the report first and attach as a file to your comment. Thank you for doing this in the future. -
I performed a similar test to the one you developed: I output six streams from Isadora to Open Broadcaster, which can receive (but not send) multiple Syphon streams from Isadora. This test was performed with Isadora 2.1.
With NI-Mate (requires a Kinect, creates 2 syphon servers), Syphoner (creates a syphon server out of any open application -- extremely useful for any Isadora user), and Simple Server, it’s possible to set up three different sources to create four syphon streams without using Isadora, for those that have access to this programs and a Kinect camera.
I performed this test again today on 2.2.1, and was able to run nonstop for a few minutes. Isadora ran between 27 and 30 FPS. I did experience two crashes doing this: once when I was closing the Isadora window, and the first time I set the fourth Syphon Receiver to the fourth Syphon stream I set up.
I also performed both instances of your test Mark. I ran the Isadora-to-Isadora patches using two instances of 2.2.1 without issues or crashes, despite running two instances of Isadora at the same time. Both instances of Isadora ran at 30 FPS.
Sending four instances of Simple Server into Isadora worked without a hitch.
Do you think if we increased the output to full HD video streams we would have different results?
-
Also, adding to the discussion here, I just spoke with an high-level Isadora user who had five HD video streams coming from Black Syphon into Isadora with no problems at all, including all the runs of the show. (Which were several.)
So, there seems to be something going on here that is not totally Isadora related. We might need to get some kind of actual Max MSP patch that transmits HD to fully flesh this out. Is there anyone who could easily set that up using the jit.gl.syphonserver module? (I don't have Max so I can't do it.)Best,Mark -
I have been testing with the Syphon Simpler Server as you outlined, except that I added 1 server and receiver so that the total is five (since the original is a unique color as well, it seemed worthwhile)I have tested in 2.1, and 2.2.1 (once with 2.2)My test file, is setup with 2 scenes, the first outputs all syphon streams to 1 stage (each scaled to 50% and placed +/- 25 or center)The second scene outputs to five individual stages.Once setup they are stable in each Isadora version.Switching scenes does not cause any issue.I can however dependably recreate a crash by editing the Server inputs of the 'Syphon Receiver'I haven't found the pattern to it yet, but switching the 5 inputs, one at a time, will cause a crash (you may need to edit each a minimum of once.. upto twice, based on my tests. *Setting them all to a single source doesn't seem to be a problem.)I am attaching a few crash reports to the support ticket that were raised while making these changes.Note: the report labelled 2.2 occurred during the setup of the patch (still setting the server inputs)I will also, add my notes to the Support ticket. -
Ryan, Marc, Monty:
I have just shared these developments with my technical team, who I am meeting with virtually during the upcoming week. I'll see what their response is.Its amazing to me the focus and work you are all doing!Its interesting Ryan can duplicate the crash, yet no one seems to have had the slowdown I reported previously.The problem never showed up with Syphon Server appearing. It showed up with the **CONTENT** that Syphon server was streaming. I too could get Syphon Server to appear just fine, happy as a clam. It was when I was streaming my PhotoJpeg video files that it crashed, or slowed down.So jit.gl.syphonserver, to Syphon, to Isadora is where the whole thing went ballistic.I have had to scrap that model for my current setup. Plus, my jit.gl.syphonserver is pulling video images out of a databank of images and shooting them out randomly, which should not make a difference. But they are small files and all are Photojpeg.Ellen -
Dear @ellenvolumetric,
Well, to be clear, the crash Ryan can duplicate was only when selecting the server name from the popup menu in the Syphon Receiver actor. He was not able to duplicate the crash you reported, unless I am missing something.As far as pulling Photo JPEG images in, are these being generated on the fly? If not, if it's simply a big database of images, why not just use the Picture Player in Isadora to recall the images? You could keep the whole thing inside one program.If you want to keep on this and find a solution, I think there's no other way than you provide us with a Max/MSP runtime that streams some photo jpeg images via Syphon. (You don't necessarily have to provide us with the images; perhaps you can make a test patch that randomly pulls in from 10 images or so instead of the whole database.) If you could supply us with a test patch like this, we can work to repro the problem and address the issue.We never like it when an Isadora user has trouble. We will do what we can to help you if you want to continue to seek a solution.Best Wishes,Mark -
Mark:
My tester used your Syphon test patch and it worked but slowly on his computer.Our solution has been to do exactly what you suggested, even before you suggested it. We have ported the videos over to Isadora into four separate bins. It works and is stable, and now we have to work on porting over, via Syphon, our 3D image of live time brainwaves being generated in Max. We are redesigning the 3D representation, and will most likely test it out within the next two weeks.We have redesigned our Max patch several times since I posted this problem, and I will hunt around to find out which one can replicate it. Plus we have moved our setup so the brainwave control panel, which comes native to the Emotiv, and the middleware that handles the OSC stream, as well as the first MaxPatch that streams the OSC out from the brainwave software is all on a laptop. From the laptop using the brainwave data, it streams out to use Abelton for the sonic environment, and MAX to send the brainwave trigger thresholds on a iMac, and MacProI am attaching two photos from our test just yesterday. The first shows the four streams OSC via Brainwaves to Max to Isadora. The next shows the four streams launching 4 videos from the video bins. The fifth screen is blank, because that is the stream we will have to use for Syphon once the remodeled live time representation of brainwaves is ready. All the images you are seeing below are being launched, live time, by someone actually wearing a brainwave headset. In an actual performance not all the brainwaves will launch at the same time, this is just for testing purposes.We are using team viewer with our sonic artist in St. Petersburg, Russia, while we are working in Hong Kong. Skype is used as a backchannel for chat.Thanks so much for honing in on this issue.Regards,Ellen -
RE, this statement "My tester used your Syphon test patch and it worked but slowly on his computer." I was getting absolutely fast frame rates and with very little overhead, and so I want to investigate this.You haven't posted here (as far as I can tell) any information about the machine you're using. If you wouldn't mind doing the following it would help1) Go to the Apple menu and choose About this Mac2) In the dialog that appears, click "System Report..."3) The System Information app will open. From the File menu choose "Save..." and save the system information report.4) Compress (.zip) the results5) Post here as an attachmentI want to see what kind of machine you're running this on so I can see how that might be impacting your experience.Best Wishes,Mark -
Mark:
I asked my tester to give me the zip file. He's busy on a big installation at the moment, but I will get it to you. Plus, I send Monty, by email, a MAX file you can use for Syphon testing. The code is proprietary, and I did not want to post it in the forum.Best,Ellen