Jump to content

dlandon

Community Developer
  • Posts

    10,399
  • Joined

  • Last visited

  • Days Won

    20

Everything posted by dlandon

  1. This strategy works equally well with 6.1.9 as 6.2. Some recommendations: - I assume your VMs are on an SSD disk. - You should give the VMs no more that 8GB of memory for the moment. - Don't use balloon memory. I would do it this way: isolcpu 8-15,24-31 The gaming VM: pin cpus 12,13,14,15,28,29,30,31 emulator pin 0,16 The second VM: pin cpus 8,9,10,11,24,25,26,27 emulator pin 0,16 I'm not a fan of over provisioning cpus as it can counterproductive. In your case you have an enormous number of cpus available, so try it this way first. Also try the setting the 'Hyper-V' setting on and off in the VM manager. On is the best setting, but might work better if off. Let me know how it works out with this configuration and some specifics if it isn't working as you expect. I have some more ideas if you continue to see issues.
  2. Good to know, and good feedback as well! When I got home from work I started doing some testing on my home 12 core xeon. I tried out some different setups with my 2 Win10 gaming VMs and I have to say that I agree with your suggestion of using emulatorpin for the first pair only on the VMs. Its a bit late here now, so I hope what I write will make sense, but here goes. Keeping in mind I have hyper-v on in all these instances as I know some people have had issues using it. After adding isolcpus for all but the 1st two pairs, and using my original vcpupin setups, I tried emulatorpin on the first pair solely, and then again with the first two pairs combined. I then tested the visual performance and checked fps in game for Warthunder and also Black Desert. I tried different vcpupin setups, using 5 pairs, 4 pairs, 2 pairs, and repeated tests of the above without allocating the 2nd thread. In every test using emulatorpin on only the first pair, it gave better performance and stability for me as compared with using the first two pairs. Running the VMs without the 2nd thread allocated with vcpupin, gave me a pretty bad stutter. I didn't seem to have any over allocation issues and ultimately found that 5cores 2 threads with the 1st pair emulatorpin'd is the sweet spot for my VMs at the moment. 4 pairs caused stuttering in game. 2 pairs had roughly the same fps as 5pairs, but would have latency if the cpu spiked; war thunder wouldn't even load. Good information that confirms what I felt was the best approach. I have suggested that LT change the VM manager to emulatorpin every VM to the first cpu pair and not allow assigning the first pair to any VM.
  3. Linux tends to favor the low numbered cpus, so I would expect the first pair would be loaded more. My recommendation is based on an idea I have presented to LT as a feature request to emulator pin the first pair in all VMs using the VM manager. The idea is that in a lot of cases doing this would remove latency from some VMs and cut down on the the gyrations needed to get VMs running better. I was looking for feedback like yours to see if my recommendation has merit. Yes, you can emulatorpin other cpus. I have been unable to find anything on the internet about how much load the emulator tasks on a VM load cpus, but my gut feel is not much. Linux will use additional cpus as it needs them, so any that are not isolated will be available for Linux. Don't get too concerned about cpu frequency. The cpu scaling driver/governor that adjusts the cpu frequency can switch up the cpu frequency under a relatively small load. The Intel pstate driver I am using on my Xeon will ramp up to full speed under a 10-15% load. Full speed on a cpu does not necessarily mean it is fully loaded.
  4. I've changed the OP to reflect some new thinking I have about the emulator pinning. I think that it would be best to pin the emulator cpus to only the first cpu pair. In fact I am thinking all VMs should have the emulator cpus pinned to the first cpu pair. I have done this for both my VMs and it is working quite well. I am thinking that we should not pin any VM cpus to the first pair and leave those for Linux, unRAID, and emulator cpus. Let me know if pinning the emulator cpus only to the first cpu pair works for you.
  5. I remember also the user gridrunner saying that he was getting better performance when not pinning them in HT pairs If I recall the post, he was referring to only using one of the cpu pairs and letting the other be unassigned. I believe it looked like this: 0,4 1,5 2,6 3,7 Isolate 2,3,6,7 Assign 2,3 to the VM and leave 6 and 7 unassigned. That would leave only one hyperthread running and the other idle. That would mean that there would not be any context switching delays between cpu pairs 2,3 and 6,7. This could in theory work to reduce latency, but I'm not sure that is generally necessary.
  6. Robj has stickied this thread, so hopefully it will be easier to find. I am reconsidering my position on emulator pinning cpus and I am doing some testing right now to see if my idea has merit. If it does, I will suggest a VM manager change to LT that is very straight forward that will help people get through this without so many gyrations. If someone wants help in assigning cpus please post the following information and I will make recommendations on your setup. Post your cpu pairing from the dashboard. List your VMs and what each VM is doing. Any issues you are having with VMs as far as performance and stuttering or choppy performance. I will review and make recommendations about how to set up your configuration.
  7. So I tried cpufreq-info -d, and no output at all. Tried cpufreq-info -o, and the only output was the header line, nothing below. Then I tried modprobe powernow_k8, again no output, BUT ... the other commands then showed - And on the Dashboard, the CPU is stepping up and down! Wow! So simple! I know I used to see it stepping down before, so I'll report it as a Defect. I do hope you add the driver, but if not, I'll add it myself in go. Once the driver was in, the latency number became far more realistic, currently 109us, was 4294.55ms! cpufreq-info is reporting one more governor than you have, don't know if you want to deal with it. Wow. I feel that I've opened a Pandora's box with all this talk about cpu scaling. I'm glad you worked it out. The best bet is for you to make an entry in the go file and wait for LT to solve. I'm not dealing with the userspace governor because it permits setting a constant cpu frequency and right now I don't see why a person would want to do that. Update on the display issue bonienl has made a fix to the dashboard so the display of the cpu frequency is more appropriate for the pstate driver. I am begining to believe there are several issues here that is affecting the display of cpu frequencies for some. The processor family seems to affect the pstate operation. A later processor like a Haswell seems to be running the processor frequencies high. I'm not sure the processor frequency directly correlates to the power consumption of the processor. The P-states of later processors are different and the pstate driver was designed to be more efficient managing power on later processors. The pstate driver is designed to offer the best performance for the power consumed. In my informal tests, processor load above about 10% results in high processor frequencies. In my opinion, there is still more work needed on the pstate driver. If the pstate driver is showing high frequencies and you are not comfortable with that, then disable it. If you feel the power consumption is acceptable for your needs, then leave the pstate driver. In my opinion the pstate driver will offer the best performance. I am implementing a change to the plugin to disable turbo speed on the pstate driver. With it on, the cpu frequencies are running at turbo speeds that don't seem appropriate for a total cpu load in the mid teens.
  8. Only the share names. Full paths are not needed.
  9. The words performance, conservative, powersave, or demand do not occur (not in related lines anyway). In the past, I thought I used to see more conventional governor lines, with those options listed. But v6 *may* have changed it for my CPU. Edit: did some research, my CPU may need powernow_k8 loaded, and it's not. It's remotely possible that I never turned Cool&Quiet on in my BIOS, but I know I used to see the CPU drop to 1000MHz, now it's stuck at 2411MHz. I checked lsmod, and acpi_cpufreq is listed! It's not in my syslog. The plot thickens... I'm sure you haven't finished, but "Max Freq. Latency" needs explanation, help. The unit is "ms", a time duration, but the word 'Freq' implies "things per time unit", not sure what "Max Freq. Latency" actually means. If it means 'maximum latency', then I assume you are selecting the highest of a number of readings? If so, then the average latency might also be useful. Another similar tweakable option you may be interested in is the "io scheduler". There's been considerable discussion of it in the past here. There have been requests before about the 'turbo write' option (which can dramatically speed writes to the array), requests for an ability to schedule it for certain times of the day. Since you've added scheduling, you might be interested in using it again for 'turbo write'? (sorry, my writing is often awkward, wish I could do better) The driver is found by 'cpufreq-info -d'. It seems you don't have a driver loaded. The governors used are found by 'cpufreq-info -g'. I thought the acpi-cpufreq driver was the default for amd processors. I guess not. I will add a default indicating the driver and governor cannot be determined. Go to a command line and type 'cpufreq-info -o'. This will display the cpus, scaling frequencies, and governor for each cpu. Let me know the output of these commands. Try to load the driver using 'monprobe powernow_k8' and then see if the driver and governor can be determined. If so I may ave to add an option to install a driver. The Max Freq. Latency is supposed to be the max time between frequency changes. It comes from the 'cpufreq-info -y -m' command. It is not controllable and I am not sure it really means anything to us. I will probably just remove it. Scheduling Turbo Write is something I think LT should implement. I am not sure about the io scheduler.
  10. I have been researching and experimenting with the Linux cpu governors and have learned a few things. There are several drivers that are used in Linux depending on the cpu. ACPI CPU Freq This is the driver used for both Intel and AMD processors. The available governors are: "ondemand" - This is a power saving governor that uses the lowest cpu frequency based on cpu loading. It is aggressive in switching cpu frequency and is probably best for a widely varying load. "powersave" - This is the power saving governor. "conservative" This is also a power saving governor that uses the lowest cpu frequency based on cpu loading. It is not as aggressive in switching the cpu frequency and is probably best for a fairly steady load. It can introduce some latency because of the less aggressive frequency switching with widely varying loads. "performance" - This governor sets cpu frequencies to the maximum and does not vary cpu frequency. Intel pstate "powersave" - This is the power saving governor specifically for newer Intel processors beginning with Sandy Bridge. It is designed to manage the cpu frequency more efficiently on Intel processors. "performance" - This governor sets cpu frequencies to the maximum and does not vary cpu frequency. Currently the Intel pstate driver is working on unRAID but shows in the dashboard at boost speeds. I am still experimenting, but I am leaning towards the following recommendations: - Leave the governor at the default if you don't run VMs. - Set the governor at "performance" if you use VMs for gaming and media streaming. The plugin allows you to set "performance" on a schedule so you can turn it off a times to save power. - Set the governor to "conservative" if you have a fairly steady load and still want to save energy. It appears to perform well with VMs with fairly steady loads. I am currently using the "conservative" governor. I find that the cpu frequencies don't change very often and on the isolated cpus for my VM, the frequencies are constant. The VM is serving media and the cpu load does not vary. Feel free to experiment with the cpu governors and post your findings. EDIT: I stand corrected on the Intel pstate driver. It does in fact work, but shows on the dashboard running cpus at boost speeds.
  11. I'm not seeing this. Found the problem. Fixed in the latest release.
  12. I'm not sure it's the complexity of your network that is the issue, I think it has more to do with the slower speed switches. You are probably overwhelming the 10/100 switches and flow control helps with that. The switch can only buffer so much before it has to request the sender pause with flow control. Turning off Flow Control may or may not help in all cases. That's why the Tips and Tweaks plugin recommends making changes and verifying how it affects your overall network and unRAID operation. The NIC settings may interplay with each other. You may find that setting higher NIC Rx and/or Tx buffers and Flow Control off might offer better results. Default NIC settings are meant to handle most network situations and may not be optimized for performance. That's why I developed a way to tweak the NIC settings because so many people using unRAID with VMs for media streaming and gaming are now pressing the performance envelope and default NIC settings might not offer the best performance.
  13. Update version 2016.05.28 is available. I added a new tweak to adjust the cpu frequency governor. You can set either powersave (on demand) or performance. Performance sets the cpu frequency to full speed with no frequency step down. The cpu frequency driver is detected and settings depend on the driver. The Intel pstate driver is not currently working so any adjustments to the pstate driver will not work. It is actually recommended to disable the pstate driver. On newer Intel cpus the pstate driver is installed by Linux and should be disabled when Linux is booted until it is fixed, I have been playing around with the cpu governors and I am not sure there is any value in changing the default setting to performance. It doesn't seem to take a lot more power when set to performance, and it does seem to help in media performance. I haven't done any formal testing, so I can't substantiate my findings. This might be helpful to those trying to squeeze one last bit of performance out of their system. If this feature proves valuable, I may implement a cron to set the performance level during certain hours of the day, and set back to power saving the rest of the time. Please offer some feedback.
  14. New release with the ability to set smb shares hidden. The setting is in the UD Settings. When set to hidden, all UD shares will be shared hidden. Hidden shares have user access enabled.
  15. I try to install ownCloud to my unRAID, installation is smoothly, but when I try to connect from web no go ... dogbowl used your instruction to install. I try to find your instruction but I don't it in this thread. Can you point to the link ? Hello. I think you're looking for this...? http://lime-technology.com/forum/index.php?topic=33891.msg410758#msg410758 Hope this helps. BTW, it takes ownCloud a while to access login screen while setting up it's encryption, usually 20 to 40 minutes. Thanks for the link, but I still struggle with ownCloud. when I run ownCloud with webUI , I get message as: Your connection is not secure The owner of 192.168.xxx.xxx has configured their website improperly. To protect your information from being stolen, Firefox has not connected to this website. 192.168.xxx.xxx:8000 uses an invalid security certificate. The certificate is not trusted because it is self-signed. The certificate is only valid for yourhome.com Error code: SEC_ERROR_UNKNOWN_ISSUER How do I create security certificate ? That's normal because the security certificate is self signed. The browser is telling you this so you can make the decision to continue to the website. There should be a way for the browser to let you accept the certificate anyway and move on. In Chrome, there is an advanced tab that you click and you are then given the opportunity to accept the certificate and go to the website.
  16. Docker is expecting a docker/ and appdata/ share on the array or the cache drive. I'm not sure how you make that happen on a UD mounted disk.
  17. Updated version 2016.05.22 is available. I've changed the plugin to now have two tabs. One is 'Tips' that has suggestions by unRAID version. The second tab 'Tweaks' is the tweak settings page. This is a lot cleaner and gives more pertinent information on one page that is easier to manage. It provides information on fixes and known issues in one place. If anyone has anything that is missing from the tips, let me know and I can add that. I think I got them all.
  18. I have several problems with having the plugin make this change as you are suggesting. This plugin can also be used on 6.1 and that tweak might not be appropriate for 6.1. I don't think this plugin should be making unRAID system changes. I have put a bold notice at the top of the plugin page that says how to fix the problem. That's all I am comfortable with right now. I have incorporated your changes and will release an updated version today. Let me know if you have any other suggestions or additions.
  19. I've created a post on the plugin here http://lime-technology.com/forum/index.php?topic=49233.0 I think we are ready to go. I'm sure there will be some changes once we get more feedback on the settings and what works for people.
  20. This is a plugin that allows you to adjust some NIC parameters, disk caching, and other tweaks. Some users have found that these tweaks will improve media streaming and gaming performance of VMs. Feel free to experiment, but I don't recommend just cranking everything up to the maximum values. Doing that may be counterproductive. You will have an impact on RAM used, and may create a situation where Linux kills some processes to recover memory causing all sorts of problems with Unraid. Your results will depend on your NIC(s) and what features are available, the architecture of your network, your total RAM, disk drives, and your VMs. Click on the 'Help' button and read carefully before making any adjustments so you understand what each tweak does. Install the plugin using Community Applications. Updates Added the capability to disable FTP and Telnet. Added feature to archive syslogs from the powerdown plugin. Added a feature to kill specified tasks when the array is stopped. Remove disable FTP and Telnet. This can be done now in Unraid itself. Added better power save scheduling to manage CPU Governors on a schedule. Added 'powertop' for additional power saving adjustments. Removed 'powertop'. The power savings is very minimal and there are reports of sata controller issues.
  21. Normally if the drive is not mounted rw, there will be an error message from the mount command. I don't see that, so I don't know why it is mounted as ro. The hfsprogs package is installed by UD, so you should be able to write to the disk. You can check this by doing a ls /var/logs/packages and hfsprogs will be listed as an installed package. According to gfjardim's notes, the libbsd package should also be installed because it is needed by hfsprogs. You might try to do a fsck on the drive using UD. EDIT: Check the system log and see if there is an entry about the mount failing.
  22. "If the disk has been precelared and shows a grayed 'Format' button, click on the disk serial number, then click on the red-X to delete the preclear status file."
  23. xfs and ext4 get mounted with 'discard'. There is no user settable Trim option. Click 'Help' on the UD page and read what it says about formatting disks and pre-cleared disks. Based on your response, I feel that I'm probably missing something obvious... d'oh! I'll have a look tonight when I'm home. Thanks for the reply. ~Spritz It's not that it's something obvious you missed, it's just that I am encouraging people to read the help to get their answers. Your answer is in the help text. It's actually faster than posting a question and waiting for an answer. If the help does not have the answers people are looking for, then I will add to it.
×
×
  • Create New...