High iowait during transconding sessions. What I am to do?

Hi guys,

I recently bought a HP MicroServer Gen8 (with XPEnology) and upgraded its CPU - an Intel i5-3470T.

With my old CPU (Intel Celeron G1610T to) I was able to run two simultaneous transcoded streams smoothly - depite a low passmarkt of about 2000. Although I upgraded I am not able to run more transcoded streams now, so I installed netdata und observed my system core metrics.

I can see that I have high iowait during transcoding sessions so I think the disk slows down the entire system. Disk utilization is about 100% all the time. System runs with a 7 years old Seagate 2TB (ST2000DL003) with just about 3% free capacity.

So what do you guys advise me to do? Should I just buy a new HDD? Would it be better to install a SSD?

I was not aware of this. Thank you. While I run out space I already planned to install two 4TB WD Red.

Yes, I did. And it is also enabled. But I can not see the little (hw) in Plex while doing transcoding. I read somewhere I should move to Docker. Would you advise this? Can I expect a major performance boost?

Synology offers the ability to create a SSD Cache. I thought this would probably help. So I think moving my transconding temp folder to an SSD would not help either, right?

So what can I try to make use of hardware acceleration? My CPU ist QuickSync capable so technically it should work I guess. I agree that besides complexity Docker would put too much overhead to my system but I already use it for UniFi Controller and stuff.

I just read about transcoding to RAM. Is it worth considering in my case?

So you think my network is the bottleneck? This seems to be a bit contradictory to my observations with netdata.

I am pretty sure it is not. I actually do not need much transcoding performance for my home network because I can direkt stream or play nearly everything. I share my library with friends and sometimes more than two people watch at the same time. Upload is not factor as well.

While Plex is transcoding I can clearly see my CPU is not utilized to its limit. And when it is hurt it is mostly because of iowait. Sometimes I cant even reach the DSM UI.

Maybe I don’t get your point. From your explenations I conclude that there is not real option to boost my transcoding capabilities although I upgraded to an way better CPU based of Passmark rating. Theoretically my transcoding sessions should go up by factor 2 - but nothing has happened.

If you use “iostat -zw 10” and watch for a minute can you see which disk is blocking / busiest. Moving transcoding to SSD or RAM disk is only useful (my understanding) for the writing. If your system can’t read the source fast enough then all bets are off.

Ok. Maybe I should really reject the idea of adding a SSD. I was probably too optimistic because I read stuff like this.

As I already wrote I do not see the hw sign. So you could be right that my motherboard was not designed to make use of QSV. I will look up in some forums to verify that. Maybe there is some workaround. Thats why I thought Docker would be a possible solution.

Utilization is okay but I can see some major drops in performance when iowait steps in. This is when videos starts to buffer.

What do you mean? S.M.A.R.T.? Full test is scheduled monthly.

Can you recommend software to check the disk? What parameters should I look for?

I’d be looking into the <3% free space too. Low capacity can have negative implications on performance but it depends on the application and usage cases.

The disk is otherwise fine - in all likelihood unless the disk is failing (as suggested, look into some SMART reporting software) then it should be able to cope with 20-50Mb/s of video throughput.

Ok guys, I think this thread can be seen as answered. I am gonna update my drives and will report back with results.

In the meantime I would like to check the RAM transcoding solution. But I am not really sure how transcoding is handled. I just have 4 gig of RAM installed right now. Does transcoding to RAM load just parts of the to-be transcoded file to the RAM and deletes it as soon as it is transferred to the client? Otherwise I would run out of RAM pretty soon because despite some tv shows all my movies are way beyond 10gig.

Maybe you could point me to the right direction, some tips or further readings.

Really appreciated your help. Thanks!

@Jan-Niklas

Click the ellipsis by the post(s) which you feel are the solution and click the checkbox. This marks the post(s) as the solution

I have a relatively similar setup however I opted for unRAID as the base OS and upgraded to a Xeon X3-1220 v2.

I had similar issues with performance until I installed an SSD into the system. Within unRAID I use Dockers for all applications including Plex. These applications run from the SSD but also app data is stored and run from the SSD which means when a video is being transcoded the temp files, chunks, and all metadata are loading from the speedy storage not the slower SATA HDD (I have 4x SATA3 drives totalling 20Tb available storage with 9% available.

Since I installed the SSD most of my performance issues went away. No idea if you can do the same in synology - the cache drive may be used differently.

I hope this experience helps.

David

If I may augment here?

Synology does not allow us to create a SSD volume. It is only a cache which it controls.

We won’t see the gains normally seen on SSD-based full filesystems/volumes

So as I digged a little deeper into this issue I read about a special problem with my HDD (ST2000DL003).

Synology recommends not to use Write Cache setting due to some major firmware problems. It can be solved by updating firmware but this is not a option for me. Furthermore this HDD is just capable of SATA II.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.