Mac Vs Windows

davidktw

Arch-Supremacy Member
Joined
Apr 15, 2010
Messages
13,550
Reaction score
1,301
I don't know if you've taken my message in. Let me rehash.

I've seen (and caused) parallels and other virtualizations to break. They're a nono for some use cases. Just my personal experience in a different world.

Perhaps our definitions of "heavy workload" differ.

Appreciate your rehash. In that case, I will say, yes virtualisation is not the silver bullet to all use cases. However heavy workload to me works all the same. I have experience with heavy workloads that fits the enterprise industry, less of one, that falls under the scientific level which may require a supercomputer.

but if "heavy" here differs within a single node, then I would say the margin here is really superficial, and really that doesn't really matter if it's virtualisation or not since we are really talking about something which could be done by beefing up the machine spec (if the machine allows). Should the discussion goes into multiple nodes, then whether it scale or not, does not matters if it is on virtualisation or not, but rather if it scales near-linearly, or will it eventually reach a plateau or get worse due to whatever reasons.

Thanks for the discussion.
 

devilcm3

Senior Member
Joined
Jan 21, 2009
Messages
2,337
Reaction score
0
the best valued mac is always in the refurbished section.

cheap (sometimes up to 25% discount), one year warrantied just like new macs, sometimes even brand new (e.g bought 2015 refurb macbook pro, in 2015 lol)
depending on the season sometimes you can get a really good haul for windows-laptop price

i was skeptical on my first refurb purchase, but after my second one .. no doubt all my subsequent macs will always be refurb.

the only thing that it doesn't come with, is the shiny new mac box ... but who cares, once you do the unboxing it'll be sent into store-room department.

lastly about the mac is that, it was never about the specs ... its all about the software.

macs (except macpro) will always never beat windows in the specs department .. but the software is genuinely good.
 

davidktw

Arch-Supremacy Member
Joined
Apr 15, 2010
Messages
13,550
Reaction score
1,301
the best valued mac is always in the refurbished section.

cheap (sometimes up to 25% discount), one year warrantied just like new macs, sometimes even brand new (e.g bought 2015 refurb macbook pro, in 2015 lol)
depending on the season sometimes you can get a really good haul for windows-laptop price

i was skeptical on my first refurb purchase, but after my second one .. no doubt all my subsequent macs will always be refurb.

the only thing that it doesn't come with, is the shiny new mac box ... but who cares, once you do the unboxing it'll be sent into store-room department.

lastly about the mac is that, it was never about the specs ... its all about the software.

macs (except macpro) will always never beat windows in the specs department .. but the software is genuinely good.

If you only need to eat half a bowl of rice and able to chop down a tree, you will definitely last longer on the same bucket of rice, compared to one that takes 2 bowls but still chop down the same tree with the same time.

The issue here is there are just so many people looking at numbers, but forgotten these numbers are not absolute. They must be taken relative to the consumption.

However that is not to say Mac does miracles, and never is Mac always more efficient. It all depends on the software one uses and the way it is used. Even the same piece of software from the same author on different platforms are using different libraries and coded differently at some critical areas which need to integrate with the OS and the choice of hardware available.
 
Last edited:

Piezoq

Senior Member
Joined
Mar 31, 2010
Messages
1,567
Reaction score
0
I will only say I have not seen anyone use a virtual machine on any problem of substantial size. Equally I have never seen installation of pro tool licenses on a virtual machine, some which can cost more than the hardware.

I reckon when push comes to shove, this discussion is moot because vm is rarely used in scientific computing, if at all.

Distributed computing is way off topic so I will leave it as is. Cluster licensing though, is an interesting subject in its own right.

As for scaling, that's a deep topic pinned between the embarrassingly parallel to the perfectly serial. Some years ago, the coder had to do all the hard work parallelizing functions and routines. Today's high level languages and interpretive code have made it much easier.

Appreciate your rehash. In that case, I will say, yes virtualisation is not the silver bullet to all use cases. However heavy workload to me works all the same. I have experience with heavy workloads that fits the enterprise industry, less of one, that falls under the scientific level which may require a supercomputer.

but if "heavy" here differs within a single node, then I would say the margin here is really superficial, and really that doesn't really matter if it's virtualisation or not since we are really talking about something which could be done by beefing up the machine spec (if the machine allows). Should the discussion goes into multiple nodes, then whether it scale or not, does not matters if it is on virtualisation or not, but rather if it scales near-linearly, or will it eventually reach a plateau or get worse due to whatever reasons.

Thanks for the discussion.
 

davidktw

Arch-Supremacy Member
Joined
Apr 15, 2010
Messages
13,550
Reaction score
1,301
I will only say I have not seen anyone use a virtual machine on any problem of substantial size. Equally I have never seen installation of pro tool licenses on a virtual machine, some which can cost more than the hardware.

I reckon when push comes to shove, this discussion is moot because vm is rarely used in scientific computing, if at all.

Distributed computing is way off topic so I will leave it as is. Cluster licensing though, is an interesting subject in its own right.

As for scaling, that's a deep topic pinned between the embarrassingly parallel to the perfectly serial. Some years ago, the coder had to do all the hard work parallelizing functions and routines. Today's high level languages and interpretive code have made it much easier.

If the idea is here virtualization but not limited to what kind of machine and which kind of virtualization brand, then i must say a large scale deployment of distributed computing across Xen or HVM virtualization for scientific purpose has already taken place a couple of years back

https://aws.amazon.com/solutions/case-studies/nasa-jpl/

AWS may be cloud base, but it is pretty clear across the board that they are Xen derivative solution running on top of what they claim as commodity machines. But obviously I wouldn't think commodity here refers to the usual consumer grade, but rather workstation xeon class servers, instead of supercomputers or Hp superdome.

For larger scale example?
http://arstechnica.com/information-technology/2013/11/18-hours-33k-and-156314-cores-amazon-cloud-hpc-hits-a-petaflop/

While all these probably wouldn't fit into a Mac Pro nor any single PC mode either, but certainly the use cases did certainly demonstrated that virtualization is not likely the bottleneck for scaling and performance
 
Last edited:

ykgoh

Master Member
Joined
Jan 1, 2000
Messages
2,782
Reaction score
0
I actually think TS requirements are a lot simpler than we have imagined, basically as a communication student, they do media editing, and mostly MS Office on school's assignments and projects. Plus Steam gaming.

He's not going to do big data, or cluster computing that kind of hardcore level.

Think davidktw and piezoq are techies who do advanced stuffs that normal people do not touch.
 

davidktw

Arch-Supremacy Member
Joined
Apr 15, 2010
Messages
13,550
Reaction score
1,301
I actually think TS requirements are a lot simpler than we have imagined, basically as a communication student, they do media editing, and mostly MS Office on school's assignments and projects. Plus Steam gaming.

He's not going to do big data, or cluster computing that kind of hardcore level.

Think davidktw and piezoq are techies who do advanced stuffs that normal people do not touch.

I fully understand the general requirements from TS. Seriously if the idea is about getting raw performance and that is the critical point, then really, the questions should be on which kind of server class machines that should be considered, how much IOPS is preferred, should the network be Infiniband RDMA instead of Ethernet, etc...

In this case, virtualisation running on top of the Mac OS is a very feasible solution having the overhead, while does exist, is not really that big of a concern in average portable system. Considering virtualisation has come a long way since Connectix Virtual PC launched in 2001, it has been a great leap over the 15 years. The use of Parallels and Fusion has been widespread for a lot of Mac users. If the issues on Windows Updates or guest breaking up is really a concern, it will be seriously all over the news frequently. Not to mention I have been using virtualisation for study, for work, and even deploying for enterprises. These problems, while in existence, are really rare if you consider how often the solutions work.

The only great concern is indeed the software licensing when virtual machines are started in bulk, which is none of an issue for TS at all.

Looking back at year 2009 when I procure my Macbook Pro CTO, it is a fully maxed out system running at 3Ghz in that year. I must say any work that resulted in near 100% processing time in my machine must be serious enough a test to know if the virtualisation machine does break down.

If we will to bring forth the discussion onto enterprise or scientific level, seriously it would be silly to imagine why multiple nodes are not in discussion about scalability instead of discussing if the virtual machines inside a single node make sense or not. It's not as if, when an application is run directly on the bare metal machine, that it will supersede a setup of 10x machines running on virtualisation (provided the software is designed to scale horizontally)

So the concept of utilisation virtualisation is very real and very feasible not only for general consumers, but also applies for businesses and scientific works. Earlier I have provided real use cases which one includes NASA on AWS (virtualisation cloud provider).

In my work, I design and work with clients which run enterprise systems running on top of VMWare and HyperV serving the public Internet users. So if these industrial use cases still fall short of telling the maturity of virtualisation, I seriously don't know what it will takes to convince such simple concept.

Of course, the discussion here is not to deter someone from using a non-Mac system. I'm not here to hard sell Mac nor to convince anyone to do so. Rather, I am spending the time to explain how virtualisation is not the real concern, and if it is not the silver bullet to all use cases. We consider it a mature solution for consumer, enterprises or even scientific works.

:)
 
Last edited:

ykgoh

Master Member
Joined
Jan 1, 2000
Messages
2,782
Reaction score
0
Will be good for TS to find out for communication students in his programme, what software are usually used for media editing and office productivity for his course and by media industry professionals, which is the main thing. And which OS is used for those software. Is it Adobe Premier Pro (Windows/OS X), Apple Final Cut Pro (OS X only) or Sony Vegas Pro (Windows only) for video editing?

My guess is actually OS X, which would push us towards a MacBook. Windows does not seem as mainstream or well accepted in the media industry. Ideally, follow the 80-20 rule, 80% native and 20% virtualization for special software. He won't want to be virtualizing 80% of his daily software due to overhead and hassle of setting up the virtualized environment.

The big complication is the Steam gaming which forces us to lean towards Windows for the wider variety of available game titles.
 

trento

Great Supremacy Member
Joined
Sep 11, 2007
Messages
65,861
Reaction score
3,235
If you only need to eat half a bowl of rice and able to chop down a tree, you will definitely last longer on the same bucket of rice, compared to one that takes 2 bowls but still chop down the same tree with the same time.

The issue here is there are just so many people looking at numbers, but forgotten these numbers are not absolute. They must be taken relative to the consumption.

However that is not to say Mac does miracles, and never is Mac always more efficient. It all depends on the software one uses and the way it is used. Even the same piece of software from the same author on different platforms are using different libraries and coded differently at some critical areas which need to integrate with the OS and the choice of hardware available.

yep mac's own office software will work better on its own os than ms office. more fluid, faster etc. just a simple eg. not that ms office doesn't run well. but if u tried both, u can tell the difference.
 

trento

Great Supremacy Member
Joined
Sep 11, 2007
Messages
65,861
Reaction score
3,235
Will be good for TS to find out for communication students in his programme, what software are usually used for media editing and office productivity for his course and by media industry professionals, which is the main thing. And which OS is used for those software. Is it Adobe Premier Pro (Windows/OS X), Apple Final Cut Pro (OS X only) or Sony Vegas Pro (Windows only) for video editing?

My guess is actually OS X, which would push us towards a MacBook. Windows does not seem as mainstream or well accepted in the media industry. Ideally, follow the 80-20 rule, 80% native and 20% virtualization for special software. He won't want to be virtualizing 80% of his daily software due to overhead and hassle of setting up the virtualized environment.

The big complication is the Steam gaming which forces us to lean towards Windows for the wider variety of available game titles.

provided u get a win laptop with a discrete gpu with decent performance.
 

Piezoq

Senior Member
Joined
Mar 31, 2010
Messages
1,567
Reaction score
0
Cloud computing? Now that's a whole different ball game. I'd say they're mostly embarrassingly parallel (or close to) or the cloud functions as a some sort of wrapper/manager/storage. It's easy access, low-cost computer time.

(I appreciate your google-fu)

They are not the sort of use cases I had in mind, nor the kind of software tools I was referring to, hardware one has access to.

If one were so inclined, I'd say Java (released 20 years ago) is also a virtualization. Write once, run on any platform. Not used widely in scientific computing, but it's present. Performance is still rather horrible, but hey, it's easy to write.

If the idea is here virtualization but not limited to what kind of machine and which kind of virtualization brand, then i must say a large scale deployment of distributed computing across Xen or HVM virtualization for scientific purpose has already taken place a couple of years back

https://aws.amazon.com/solutions/case-studies/nasa-jpl/

AWS may be cloud base, but it is pretty clear across the board that they are Xen derivative solution running on top of what they claim as commodity machines. But obviously I wouldn't think commodity here refers to the usual consumer grade, but rather workstation xeon class servers, instead of supercomputers or Hp superdome.

For larger scale example?
http://arstechnica.com/information-...56314-cores-amazon-cloud-hpc-hits-a-petaflop/

While all these probably wouldn't fit into a Mac Pro nor any single PC mode either, but certainly the use cases did certainly demonstrated that virtualization is not likely the bottleneck for scaling and performance
 
Last edited:

davidktw

Arch-Supremacy Member
Joined
Apr 15, 2010
Messages
13,550
Reaction score
1,301
Cloud computing? Now that's a whole different ball game. I'd say they're mostly embarrassingly parallel (or close to) or the cloud functions as a some sort of wrapper/manager/storage. It's easy access, low-cost computer time.

(I appreciate your google-fu)

They are not the sort of use cases I had in mind, nor the kind of software tools I was referring to, hardware one has access to.

If one were so inclined, I'd say Java (released 20 years ago) is also a virtualization. Write once, run on any platform. Not used widely in scientific computing, but it's present. Performance is still rather horrible, but hey, it's easy to write.

I already knew the story when it happened since I am also a certificated AWS Solution Architect. I'm just putting it out to tell you that it has happened and virtualisation across the board for consumer, enterprise and even military or scientific usage is not a new story at all.

Cloud computing is not miracle. It is still built the very same technologies that are powering virtualisation on workstations, namely Xen. The same applies for M$ HyperV, or VMWare vSphere. The best value in a mature cloud computing provider like AWS, M$ Azure, GCE is their management tools and how they provide SOA like services or micro services.

The only thing at the end of the day of using virtualisation is how much overhead we are talking about. Baremetal hypervisor at Level 1 like VMware vSphere, M$ HyperV, Redhat HVM, Linux KVM are working on top of a thin layer of virtual abstraction and hence offers near native performance. Parallels Workstation, Desktop, Vmware Fusion workstation, player at Level 2 hypervisors, will incur more overhead since they are riding on a full fledge OS which may or may not have the best optimised drivers to serve abstraction.

Java is a form of abstraction. While we can look at it from a virtualisation perspective, but today, Java is not considered virtualisation due to the following reason
1) Even if you write codes for Java, you cannot achieve 100% consistency across all platforms since the API are not 100% equivalence across all platforms.
2) There are API found in certain platforms like Win32 API which are not found in the *NIX counterparts.
3) JVM perform Just-In-Time compilation which compiles bytecodes into native codes, which means your codes now touches the binary directly, so it's not virtualisation at all.

I'm afraid you may not have catch up with performance of an enterprise level JVM. Java is not lagging by a lot compared to native codes. The WORM concept was in the past, but very much broken in today's Java development. I learn and do Java development for almost 15 years, how would I not know it ? :) Feel free to read http://fiehnlab.ucdavis.edu/staff/kind/Collector/Benchmark/JAVA_Benchmark on Java 1.6.

When you run your applications on a hardware level virtualisation, it's not the same as Java. There is nothing you need to change in your code to accomodate. The ABI(not API) applications running on top of the Windows guest running in Linux, Mac, or another version of Windows doesn't change across these hosting environment platforms. That's hardware virtualisation, so don't be mistaken with Java.

For most of the reason we have for JVM dismissal, it is not with how fast JVM run, but rather on the Garbage Collection pauses due to stop-the-world operation. This problem has been very well investigated and researched and greatly resolved. If you have enough money to spend, Azul Systems have the highly priced JVM wich is claimed to be capable of High Frequency Trading(HFT).

Whether your distributed architecture is embarrassingly parallel or not *has nothing to do with virtualisation*, has nothing to do with which platform it runs on, has nothing to do with which programming language you use*. If you code your program wrongly and enforced too much global/distributed locking, it will still hinder performance when you run them across baremetal machines. Eventually the network synchronisation will slow the overall performance to how much network latency there exist. You may also passthru your codes in parallel to underlying GPU equiments, internal or external such as the Nvidia Tesla, or perhaps have your codes adapt to OpenCL which will run fine across the board using Intel support chipsets or AMD ATI Radeon GPU or Nvidia cards or appliances.

Mature Cloud providers like AWS merely does it a lot better than your own setup having they can employ industrial class equipments like Infiniband, or fibre channels to minimise the network latency across dedicated hardware nodes suitable for HPC. They can also employ larger machines which can hold more cores within the same instance so that performance works better than across the networks between the NUMA cores.

Bottomline is I do not agree that just because you are on cloud computing means things must be embarrassingly parallel. Things are done this way because architects recognise the short fall of such environments and architects employ what is best for the environment. The same goes for virtualisation and native. However what I have presented is if we want to throw blame at virtualisation for slowing down your application, then perhaps the better question to ask is, why are you not using applications or designing applications which take advantage of horizontal scaling which will give you the performance boost in areas where possible. Unless you are able to point out that your application is designed single threaded or there is no possible algorithm on earth that could parallelise the computation that is required which is then we can only run on the fastest single core we can find. Otherwise I think it is more of an architecture inadequacies instead of virtualisation or not.

If you have analyse all the above and you feel your approach is best for own use cases, that is good. Just that in the context of this thread, I don't see that we need to consider this as a setback because ultimately if one is trying to get the most out of just one single node, and to consider virtualization as a disadvantage to the purpose of this thread, i would have considered it "not thinking out of the box" (almost literally) :)
 
Last edited:

tank_t

Banned
Joined
Sep 1, 2006
Messages
60,322
Reaction score
12,190
get mac for work and studies. keep gaming at home with desktop.

when you keep games at home it will improve your social life.
 

davidktw

Arch-Supremacy Member
Joined
Apr 15, 2010
Messages
13,550
Reaction score
1,301
get mac for work and studies. keep gaming at home with desktop.

when you keep games at home it will improve your social life.

I think you will need to also include the premise that one doesn't keep himself/herself lock up in front of the game all the time, otherwise, isn't that the path to be, yet another, otaku ? :)
 

firezero10

High Supremacy Member
Joined
May 1, 2010
Messages
27,743
Reaction score
236
Use mac can go starbucks. Use others go starbucks like xiasuay only. True story~~~
 

alanwade123

Member
Joined
Aug 12, 2016
Messages
332
Reaction score
0
Mac is far better than windows but people won't leave windows, we have an example of XP... People still love and use XP
 

Piezoq

Senior Member
Joined
Mar 31, 2010
Messages
1,567
Reaction score
0
The examples cited certainly sound embarrassingly parallel, using either custom code or open-source tools. They are wash, rinse, repeat type of problems, much like what 1000+ core GPUs today do in rendering the latest games. They read more like proof of concept, rather than academia giving up their supercomputers and migrating cloud-side.

Cloud computing is a convenient alternative for this class of problems, provided cost and timelines are amenable. One big question with the cloud is, how does one deploy paid licenses?

It's certainly interesting, but virtualization at the cloud level is way more liberating due to the almost unlimited hardware muscle that's on tap and some of the world's best engineers and programmers on tap to keep things in order. But like I said, the cloud wasn't what I had in mind.

What I do know for a fact is, I have never seen someone toting a mac and virtualizing a windows instance to run a pro tool, even on today's very capable machines. It just doesn't make sense. Bootcamp certainly, but even then it's rare.
 

davidktw

Arch-Supremacy Member
Joined
Apr 15, 2010
Messages
13,550
Reaction score
1,301
The examples cited certainly sound embarrassingly parallel, using either custom code or open-source tools. They are wash, rinse, repeat type of problems, much like what 1000+ core GPUs today do in rendering the latest games. They read more like proof of concept, rather than academia giving up their supercomputers and migrating cloud-side.

Cloud computing is a convenient alternative for this class of problems, provided cost and timelines are amenable. One big question with the cloud is, how does one deploy paid licenses?

It's certainly interesting, but virtualization at the cloud level is way more liberating due to the almost unlimited hardware muscle that's on tap and some of the world's best engineers and programmers on tap to keep things in order. But like I said, the cloud wasn't what I had in mind.

What I do know for a fact is, I have never seen someone toting a mac and virtualizing a windows instance to run a pro tool, even on today's very capable machines. It just doesn't make sense. Bootcamp certainly, but even then it's rare.

First of all, at no point that i have made that macbook pro running on virtualization is the best option for a piece of equipment that need to squeeze performance out of the machine. I have also made it very clear that overhead exists, and i pose a very clear message across that it is all about appetite and patience. Instead you go into the deep discussion on whether a piece of hardware like Macbook Pro is suitable for pro tools, which i did provide facts that if your tool isn't design to distribute workload across multiple nodes, then the problem is your tool, not whether virtualization make sense as an overall concept. Make note that the discussion goes beyond brand and beyond OS and machine. You then later put in reason citing there are not use cases of using virtualization for scientific purposes, which i have again cited real use cases which they are done so. I do not agree distributed computing are solving at best only on embarrassingly parallel problems. with enough workload which can be broken down into individual tasks(note not equal tasks), workers concept using queue systems can be employed regardless in the cloud or on premises HPC infrastructure. These tasks can have decencies from one stage to another, but still able to enjoy performance gain. This is one article where someone tried for MPI capabled software https://cyclecomputing.com/running-mpi-applications-in-amazon-ec2/

What you have in mind, I don't know. But so far, what you have in mind seems as cloudy as it could. Only you knows :) cloud or not, it is the same kind of hardware you are using now. They are not miracle pills, so if your software can't work efficiently on premise, there is no reason for it to fly faster in cloud. If you wanted more concrete ideas how your use cases can be performed totally or partially in the cloud, i recommend that you put up some more details and if you like we can discuss in detail and i can recommend what i know. otherwise you are always free to go venture out.

If you really want to know how licenses are settled, go and find out cloud licenses from your vendor. Otherwise how do you think redhat, microsoft, and oracle are running their licensed OS and databases in the cloud today. The question you are asking about costs are better to be resolved at the business agreement, not a technical problem. Some vendors go by using hours activated, some vendors goes by number of requests made, some by total number of users and some by cores or perhaps servers. For cloud, normally vendors employ a different matrices so that they can stay profitable while provides flexibility for clients. End of the day, is whether your company is large enough or your spending is sufficiently large enough to bend the vendors around for changes
 
Last edited:

Rock-kun

Senior Member
Joined
Sep 10, 2007
Messages
991
Reaction score
1
The only thing at the end of the day of using virtualisation is how much overhead we are talking about. Baremetal hypervisor at Level 1 like VMware vSphere, M$ HyperV, Redhat HVM, Linux KVM are working on top of a thin layer of virtual abstraction and hence offers near native performance. Parallels Workstation, Desktop, Vmware Fusion workstation, player at Level 2 hypervisors, will incur more overhead since they are riding on a full fledge OS which may or may not have the best optimised drivers to serve abstraction.

I can attest to Hyper-V's and KVM's speed. Shut the power-saving functions off on the laptop and the VM flies. Definitely not native speed, but fast enough to forget that it's actually a virtual machine.

(Unfortunately, my Windows 10 virtual machine on KVM + QEMU locks up half the time for some strange reason. I suspect it has something to do with my custom-built kernel.)

Also OT here a bit, but I'm a bit disappointed to see you use the 'M$' term. :(
 
Important Forum Advisory Note
This forum is moderated by volunteer moderators who will react only to members' feedback on posts. Moderators are not employees or representatives of HWZ Forums. Forum members and moderators are responsible for their own posts. Please refer to our Community Guidelines and Standards and Terms and Conditions for more information.
Top