I did a benchmark comparison (not overly accurate, but it might give some pointers).
Your CPU 9061 rating. Single Thread Rating: 2084. Margin for error: Low.
No of Cores: 4 (2 logical cores per physical).
https://www.cpubenchmark.net/cpu.php?cpu=Intel+Core+i7-4900MQ+%40+2.80GHz
15 seconds to open dispVM.
My CPU 2820 rating, Single Thread Rating: 1051. Margin for error: Low.
No of Cores: 2 (2 logical cores per physical).
https://www.cpubenchmark.net/cpu.php?cpu=Intel+Core+M-5Y10c+%40+0.80GHz&id=2464
33,49 seconds to open picture in dispVM.
So I got one real core, and one logical core to run my AppVM's, while you essentially have double up, 2 cores, 2 logical (unless you modified default Qubes CPU core layout to AppVM's of course).
If you notice the value rating pr. core, yours is rated 2048, while mine is rated 1051. That's a roughly double up difference in performance.
What I wonder about, what would happen if you assigned the 3'rd physical+logical core to your AppVM usecases, while preserving the last 1 physical+logical core in dom0? Would it give you 75% performance in AppVM's instead of just 50% performance?
You can reduce the start time to almost zero by using an already-running, named DIspVM, see marmarek's post in https://github.com/QubesOS/qubes-issues/issues/2801.
You can set a cron job that ensures they shutdown at least once per day.
nice CPU/virt_mode/memory benchmarks! That was a really interesting read.
btw I think what Mirrorway meant is if it automatically shutting down are to make up for down-time, for example if you don't use dispVM's for a full day or longer, then it'll shutdown on it's own and start again. Thereby, I believe, you prevent any potential internet based attacks by reloading fresh and clean system-files from the template. It seems like a pretty cool idea, it automates everything even if not using the computer for a period of time. Maybe make it more frequent, say once every 3 or 6 hours?
btw I found this too just now
https://github.com/QubesOS/qubes-issues/issues/2253
It seems even if the dispVM is shutdown, it can be made much faster too with a savefile. But if I understood it right, as Marek write in the first post they lack the manpower to get a savefile working for Qubes 4. But Qubes 3.2. has one, as it can be seen in Marek's time comparison in his second post.
but whoa, in Qubes 3.2. a savefile makes a difference from 25,5 seconds to 4 seconds, on this particular hardware. Considering this is a completely shutdown dispVM, that is some pretty impressive speed differences.
I wonder what would happen on Qubes 4 with PVH mode, savefile enabled, powerful CPU with a really fast NVMe SSD and RAM, all cores assigned but one which is kept in dom0, just how fast would it be then? In theory it should be less than 4 seconds at least if Marek's number on Qubes 3.2. can be seen as a maximum here for hardware, which is hardware that right now isn't the fastest available. What speeds would be possible here? Once a savefile is made for Qubes 4, this could probably be possible.
or maybe I should go catch some sleep, I completely miss-read the savefile thing in Marek's post. It seems the savefile is what actually generates the long bootup's of dispVM's, contrary to what I thought at first. So by not using a pagefile, it becomes faster. But Qubes 4 doesn't even use page-files it seems.
Qubestion then is, what is it that is lacking development/manpower. I'm too tired to think about that right now though, I just need to correct my mistake here at least.
the speed people reply around here is indeed scary sometimes, I didn't even chance to try correct my self after realizing I had read it all wrong before you posted a few seconds before me ^^; but I appreciate the explanation, it does make more sense now by reading your interpretation. I didn't catch the use of a dispVM as a template. That does however seem very fascinating.
Unlike regular dispvms, the lifetime of a named dispVMs is not tied to an app, you have to shutdown manually. Like regular dispvms, named dispVMs forget all changes to private storage after shutdown.To create a named dispVM called "disp-untrusted" that is based on the "untrusted" VM:$ qvm-prefs untrusted template_for_dispvms True$ qvm-create --class DispVM --template untrusted -l red disp-untrustedYour new named dispvm doesn't appear in the menu, so you'll need to rely on CLI to manipulate it:$ qubes-vm-settings disp-untrusted$ qvm-run disp-untrusted firefox$ qvm-shutdown disp-untrusted
Agreed, there is sometimes some very interesting information/use-cases about/for Qubes, which is either lost in long detailed guides as a quick remark, or not documented at all. It's understandable that the developers are busy though, but it'd be interesting if we one day can get these interesting use-cases of Qubes highlighted more.
On 10 March 2018 at 01:48, 'MirrorWay' via qubes-users <qubes...@googlegroups.com> wrote:Unlike regular dispvms, the lifetime of a named dispVMs is not tied to an app, you have to shutdown manually. Like regular dispvms, named dispVMs forget all changes to private storage after shutdown.To create a named dispVM called "disp-untrusted" that is based on the "untrusted" VM:$ qvm-prefs untrusted template_for_dispvms True$ qvm-create --class DispVM --template untrusted -l red disp-untrustedYour new named dispvm doesn't appear in the menu, so you'll need to rely on CLI to manipulate it:$ qubes-vm-settings disp-untrusted$ qvm-run disp-untrusted firefox$ qvm-shutdown disp-untrustedbut this VM is just one (1) VM that will be reset (including the home directory) on each reboot, as such I can't start two of those VMs which are separated from each other (like real disposable VMs)?
$ qvm-prefs untrusted template_for_dispvms TrueI can't run this command. It seems something is wrong hereI'm running Qubes 4rc5 and if I enter:qubes-prefs --getI can't see a property template_for_dispvms
[799]
This was the reason why i left Qubes OS. I cant coupe with hours starting vm-s. 3.2 version were faster.
well not really slow, you might just have had a bad setup and slow hardware. I don't think it's fair to blame Qubes for that though, you make it sound like it's their fault that you're on slow hardware with a bad version/settings layout. But maybe that's not your intention though.
I also hope you realize that "lots, and lots of RAM" doesn't just automatically equal fast start-ups, your specific cherry picking of quote in relation to your words, seem to imply just that.
Also why were you on Qubes if you didn't care about security? Leaving Qubes for something minor like this, seems to point that you don't care about security. So what made you come to Qubes in the first place?
Not to be a butthead or anything, I just think your rash comment is uncalled for.
On Saturday, March 10, 2018 at 8:21:02 AM UTC+1, hopkins...@gmail.com wrote:
> >32 GB RAM. launch times (~15-19 sec)
>
> This was the reason why i left Qubes OS. I cant coupe with hours starting vm-s. 3.2 version were faster.
You can probably simplify this by basing it on named dispvms.That way you don't have to keep an xterm open somewhere, nor do you need to extract the dispvm name from Xwindows.Just restart the dispvm after you close the app.For example, assuming disp-untrusted is already running:$ qvm-run -p disp-untrusted firefox ; qvm-shutdown disp-untrusted ; qvm-start disp-untrusted-p above causes the qvm-run to block until you close firefox. Then it restarts the named dispvm, which stays running until the next launch request.
This is strange, did you manually restart disp-untrusted?
Check that `qvm-prefs disp-untrusted class` says DispVM.
> Change your template - base it off a -dvm, and itwill work like a 3.2
Named dispvms should work with any appvm with template_for_dispvms set, though.
-class=AppVM
# Create a new Disposable App-VM which is based on a custom template t-fedora-26
qvm-create --template t-fedora-26 --label red --property template_for_dispvms=True --class=AppVM my-dvm
# TEST: Start an application in this dvm
qvm-run --dispvm=my-dvm xterm
# Fix menu entry from Domain: my-dvm to Disposable: my-dvm
qvm-features vmname appmenus-dispvm 1
qvm-
sync
-appmenus --regenerate-only my-dvm
# Change the Disp-VM from an AppVM (here: my-untrusted)
qvm-prefs --
set
my-untrusted default_dispvm my-dvm
# Try to start something from this AppVM in a disposable VM
qvm-run --auto my-untrusted
'qvm-open-in-dvm https:/google.de'
# This should start a new dispvm which is based on your dvm-App
# Check the template on which the dispvm is based on in dom0
qvm-
ls
|
grep
disp