It's time for a new Laptop. (What would you do?)

tgb417
It's time for a new Laptop. (What would you do?)

It's time for me to get a new Laptop.

869px-Tux.svgI've been using a Macintosh laptop for a number of years now and generally like the system.  The installation of DSS community edition is fairly straightforward on a Mac.

That said I'm open to a new configuration.  And ready to go back and even look at the basic question Mac vs PC (or Linux?) I know that in the past the suggestion from Dataiku for DSS when it came to a PC was to use Linux on a virtual box. (This did not work for me when I tried it last back in 2017.) 

I just found this post from @Alex_Reutter about using Windows 10 WSL (Windows Sub System for Linux).  It's been a while since this post was originally made.  If you are around @Alex_Reutter I would love to hear what your current experience is.  Is WLS a viable alternative to a Macintosh for DSS on a MS Windows PC?  Hows the performance?

Now to the question of what I'm looking for from my new computer: 

  • Needs to work with DSS
  • It needs to be a laptop
  • I want to start to work with GPU accelerated Neural Networks on or at least from the new coputer.
  • I'm currently using online services to make my artwork. This work uses Neural Networks that require GPU power. I would like to move to my own resources in a laptop form factor. 

It appears that I don't have the ability to get a Cuda / Pytorch supported GPU on a Macintosh. (Thanks Apple & Nvidia.) Where something like the new Surface Book 3 provides an Nvidia GPU built-in.  However, it is generally designed to run Windows.

I'm wondering if anyone has any experience with WSL 2 and DSS on MS Windows 10.  I've also noted a presentation at MS Build  2020 about the forthcoming GPU support for WSL 2.    

Or do folks have any ideas about how to get generally unlimited access to GPU without lots of incremental costs from a Macintosh?

Thanks for any thoughts you might share.

--Tom
31 Replies
tgb417
Author

@GreaseMonkey Thanks for the reply.  

On what type of hardware have you been using LinuxMint and DSS?

I'm thinking about what to replace my 2013 13-inch Macbook Air.  (1.7Ghz. i7, 8GB RAM, 512GB SSD)  Recently it has been working hard to keep up.

--Tom
GreaseMonkey
Level 2

I run a desktop system at home that I built:  ASRock X99 Extreme4 mobo w/ a cheapo NVidia Card.  

I also used to have an HP Omen laptop that ran really well.  It only had 12G RAM, but it did great.  Touchpad, 4k screen, wireless, sound and everything on it worked out of the box. 

System 76 has some decent looking hardware and their own Linux distro.

 

good luck.

tim-wright
Level 5

Hey Tom.

Did you wind up figuring this out?

I had been a Windows user for years (primarily because that is what my IT team supports) and had been using WSL for a while. Pretty straightforward to get DSS set up on WSL (that's where I started). I've also had some experience with OSX and Linux (ubuntu specifically) a few years back.

I would also encourage you to try a linux distro. For the past few months I have switched back to Ubuntu 18.04 on my personal desktop and have become quite fond of it . I have also read recently that Ubuntu 20.04 LTS is a big upgrade over 18.04. I will say, I do miss the some of the integration with the Microsoft ecosystem (Teams/OneDrive/etc/) that are required for collaborating with my company - but most of them are available through web clients anyways. Other than that I'm having a blast.

The primary reason I decided to hop back to linux is that I like to tinker with a lot of open source tools and in my experience running them on WSL or Docker for Windows was that they would "generally" work but every now and then I'd run into environment/setup issues that become a pain. When self-learning those tools there is also vastly amount more content on the interwebs for Linux than Windows. 

This was also the case as I was doing some GPU accelerated deep learning with Tensorflow locally. If your GPU learning is specific to DSS it sounds like Linux may be the way to go. If you are interested in GPU accelerated learning just for fun (outside of DSS) Google Colab offers free notebook enviroments with access to a GPU. If it 

Best of luck in your search. Let us know what you decide. (and at least the crypto craze has passed and you can actually get a GPU for a reasonably normal price)

 

tgb417
Author

@tim-wright ,

I'm leaning toward a 13-inch 2020 Macbook Pro (4 USB C port model).  Because it just works as a daily driver and as a family, we are invested in the Apple ecosystem. 

I hear you about the library issues not working well on Windows or Mac OS. I'm starting to run into this on my older MacBook Air.

That said I will almost certainly make a new Macbook Pro at least dual boot Windows with Bootcamp, and use that partition with either Parallels or VMware Fusion.  (I've been doing this for years.  That will give me either emulated hardware or non emulated direct hardware access to MS Windows 10 with WSL2 and Terminal.) 

I've also considered trying to set up a triple boot with Linux as the third OS.  (That would increase the disk space requirements for the overall configuration.)  I'm not clear if Parallels or VMware Fusion can book a Linux Partition on a Mac in the same way that they can boot a BootCamp Partition.  (I don't really want to use one of the Virtualization Tools disk images, because I can't boot the computer just to the Linux OS from one of those.)

This setup would allow me to "hop onto either Windows or Mac OS" and maybe even one of the Linux Distros.

The real problem with that Mac as a choice is that I do not get Nvidia GPU, and of course the Apple Tax. Apple only seems to want to support AMD right now. (There are some hacks that "Might" work with eGPUs or PlaidML I'm not seeing very clear evidence that folks are having good success.) Best I can tell the state of the Art DL is only being done with NVidea GPUs. AMD and Apple don't see to have good answers in this space for developers. 

Going with a Non-Apple Intel-based laptop gives me at best an "it sort of works" Hackintosh type solution for the Double Boot or Triple Boot Gaming laptop.  That said I'd like the daily driver part of the computer to be Solid and well-integrated into the rest of my life.

So, If I go with the Macbook Pro, I may go to someone like PaperSpace and rent ML / DL optimized access to NVidea GPUs.  I'm aware of Google Colab as well.  One of these will work with fast.ai.   

I've also considered doing a single board computer from NVidea called the NVIDIAยฎ Jetson Xavier NXโ„ข Developer Kit.  Use Docker or Kubernetes to load jobs to that GPU from my laptop for overnight type runs on NVIDIA hardware.   If this works well.  Then create a bit of a cluster out of several devices like this.

Finally, I'm planning to attend/listen to WWDC 2020 coming up in a few weeks before making a final decision.  There are some rumors that Apple will be switching from Intel Processors to ARM platform in the coming years.  I'm also interested in their solutions when it comes to DL compute.  If I'm going to hear anything useful about this in the Apple ecosystem, WWDC will be the place.

Thanks, I'll reach out when I get this all resolved.

--Tom

--Tom
tgb417
Author

With Apple's announcements today.  (They are going away from Intel Processors. To their own ARM-based processors.)  Hmmmmm.  Now, where do I go?... 

I feel myself less inclined to drop major bucks on a high-end Macbook Pro 16.  Because in 6 months the architecture will be different.  And in 2.5 years the current computer will be moving on toward obsolescence.  

There is a piece of me thinking about jumping to the bleeding edge and get a copy of their developers Mac Mini.  I have to see what strings are attached and the price.

--

--Tom
0 Kudos
tgb417
Author

I know that DSS does not yet support Apple ARM architecture.  However the new Neural Network apparently supports the ML cores of the M1 chip.  Including Tensor flow.  I find that an interesting outcome.

 

--Tom
0 Kudos
tgb417
Author

A quick update.

For now, I've postponed getting a new laptop. For now, I'll use my old i7 Core Duo Macbook Air. It's Ok-ish for mobile activity.

Although M1 Mac's looks super interesting, most of the Data Science Software is still getting its act together regarding compatibility with Apple ARM chips.

For now, I've gotten one of the older Intel Mac Minis Refurbished from Apple.  This meets my short term needs.  And over the long run will make a good home server.

Today I discovered the Kubuntu Focus M2 it appears to be an interesting Data Science Laptop with NVidea RTX 2060, 2070, or RTX 2080S.  Looks sort of interesting.  Is there anyone else out there using this computer?

https://kfocus.org/wf/deep.html

--Tom
0 Kudos
tgb417
Author

A Further update.

My new organization gave me a windows laptop. It, fortunately, has a moderate amount of RAM at 24 GB.  As a design node, I've installed the community (free) edition of DSS on Windows 11 in Windows Subsystem for Linux VS  (WSL2).  With the latest patches on Ubunto 18.  Although the laptop is underpowered with poor thermal management and a CPU with a very low Total Maximum power.  DSS does run surprisingly well.  (Note this is not an officially supported configuration and it is not a configuration for a first-time DSS user or someone with little or no Linux experience).  However, it does run.

Still looking forward to seeing if Dataiku can support DSS on the new M1 Pro or Max.  Particularly if I can get Python to support those GPUs so that I can do my own AI based art.

--Tom
0 Kudos
Turribeach

Thanks for the update. Would you mind creating another community thread on how you got Dataiku running under WSL2? We will be moving to new machines at work too and I will be interested to run Dataiku locally in WSL2. Also the latest Windows 10 version (19044.1288) now has GPU support under WSL2 (see here).

I ordered a new MacBook Pro with an M1 Max so I am also interested in running Dataiku under that, specially since I maxed the CPU and RAM (I want to do some video editing too). I doubt Dataiku will be interested in porting their code to ARM, too much work for very little reward since no one in the enterprise it's going to move to ARM any time soon.

The enthusiast market is a different story now. What are geeks going to buy now when they want a good workhorse laptop that can run Windows apps? With Intel Macs you had Boot Camp and Parallels so Windows apps were covered. Parallels can now run on Apple Silicon for both Windows and Linux VMs and Windows 10 ARM edition even emulates x86 64bits apps but not everything works under this emulation. Maybe Parallels could build an x86 emulation layer to have a native Linux x86 VM running on Apple Silicon? Who knows...

tgb417
Author

@Turribeach ,

I'm not clear that I have the time to reproduce, test and write up a whole post on the installation of DSS under WSL2.

However some of the key points. 

  • Based on this set of posts I used WSL2 and Ubuntu 18.
    • The Ubuntu was from the MS App Store
  • This is a Linux install.  So DSS instructions like this are helpful.
  • As with all Linux making sure that you are patched is helpful
    •  sudo apt update        # Fetches the list of available updates
      sudo apt upgrade       # Installs some updates; does not remove packages 

 

Limitations so far:

  • I have not worked out auto startup when wsl is booted.  I'm manually issuing the PostgreSQL startup commands and the DSS startup commands.

I have not yet attempted the R integration or GPU Integration.

I'd like to invite you to start a new thread about your adv

--Tom
0 Kudos
tgb417
Author

Right now I have a fairly simple addition to my .bashrc script that starts PostgreSQL and Dataiku DSS on WSL2 startup.  It looks something like this.

# Start PostgreSQL
if ! pgrep -x "postgres" >/dev/null; then
echo "Starting postgresql"
sudo service postgresql start
echo "postgres service started using: sudo service postgresql start"
fi

# Start Dataiku DSS
if ! pgrep -x "nginx" >/dev/null; then
echo "Starting Dataiku DSS"
sudo -u dataiku /home/dataiku/DATA_DIR/bin/dss start
echo "Dataiku DSS services started using: sudo sudo -u dataiku /home/dataiku/DATA_DIR/bin/dss start"
fi

This of course could be improved in a lot of different way.  If you have some ideas for making this better for WSL2 please share your ideas.

 

--Tom
0 Kudos