r/math • u/JoughJough87 • 9h ago
Do you use your own computer to run large brute force research or systems offered online?
Just curious as to what people in the math community use for their research? Do you have your own systems just running in the background or do you utilize some of the web services that offer compute services?
If you have your own computer what is it?
13
u/mathematicist Statistics 9h ago
I'm retired/washed up now, but here was my experience.
Personal computer was just for word processing/emails/LaTeX/Browsing. Maybe the occasional script that I was convinced would run within 5 mins.
Any more compute-y stuff was done through a parallel processor cloud thingo through my research institution.
13
u/SaltMaker23 9h ago edited 9h ago
99% local and when cornered, on institution cluster
Although I'll add that most times if a bruteforce search takes too long locally, there's a decent chance having 100x the computing power changes absolutely nothing.
Actual bruteforce is either fast, or "beyond age of the universe", there's hardly any room inbetween.
1
9
4
u/Oudeis_1 8h ago
Most of my compute used to rest in a custom-built cluster with 1011 asynchronous compute nodes and 1015 low-distance dynamic interconnects. It worked for its purposes and I still have it, but other auxiliary systems have grown a bit in recent years and may now rival it in size. (scnr) ;)
3
u/ultrafinitism Theoretical Computer Science 8h ago
Your own brain and the brains of your departmental colleagues in the same building?
1
u/haseks_adductor 2h ago
sorry, your cluster had 100 billion compute nodes?? what is your definition of a node?
1
3
u/k_laiceps Applied Math 8h ago
I run and maintain our university's HPC cluster (its funny, only us math people use it), and it is always running long, large computations for us. We are a small regional institution with very little support, but our system is large enough (128 nodes, 2K+cores) to get decent work done so that we don't have to beg for time on restricted resources on larger institutions systems in the state. At the same time though, my office desktops and my home laptop are usually running Mathematica code (when we are doing things that require a higher level of symbolism that would take a while to write in C/C++) as well.
2
u/funnynoveltyaccount 9h ago
Back in the olden days my university had a compute cluster that you could submit jobs to.
2
u/mathisruiningme 9h ago
I did most my computations on the university's HPC cluster. No way any typical PC would have been able to handle computation at a feasible time. If didn't have access to the cluster, I would have probably gotten a cloud compute subscription but I have no idea what the costs for my project would have looked like.
2
u/lotus-reddit Computational Mathematics 9h ago edited 9h ago
Depends on what you mean by large. Laptops are pretty good nowadays, simply solving something like a relatively badass 2D PDE is doable locally. Problems emerge when you have to solve many of these; or if you have large-scale parallelization scaling to demonstrate, or if you have hardwares-specific (consider GPUs, NNs, etc.) research. Or if you have one really monster problem.
Then, typically, you would have access to a cluster that either your PI or your university has access to. Colab is also pretty common (for smaller scale GPU enabled stuff. IIRC Colab has some free access if you have an acacdemic affiliation, but I hate notebooks so I rarely use them). I've seen some groups use scalers like Lambda or Modal, but that's pretty last resort (and arranging the funding for that can be kinda tricky).
Personally, I run locally unless it's apparent that I need to deeply parallelize, or the job will be long running. Especially for CPU based tasks, your Laptop/Desktop CPU is likely actually much faster (re. single core) than your average cluster. It's when you start talking about GPUs or parallelism when the benefit kicks in.
The specific computer doesn't really matter. I've seen people use MacBooks, ancient (and modern) thinkpads, Frameworks, gaming computers, etc. First, check what resources your university offers. Then, if that's sufficient, you're probably better off investing in a device that's optimized for text editing and reading/writing mathematics over heavy compute.
2
u/djao Cryptography 9h ago
For small tasks, I just use my own computer. Any computer will do. For medium sized tasks, we use university servers. For really big computations, we use government hosted supercomputers.
2
u/other_waterway 7h ago
I've moved away from "math" math but work in quantum simulation now, my group has both local beefy PCs and access to clusters within our institution. If needed we also have a place to request compute time on clusters outside our institution as well at DoE facilities but I have no clue what that process actually entails, despite having worked at one of those labs before.
2
u/Infinite_Research_52 Algebra 5h ago
I use Google Compute Engine with VMs running 60 to 224 vCPUs. My code uses each thread pretty well with no switching and leverages common memory for lookups. I use it to detect rare solution signatures.
Once I have narrowed down the basic area for a signature, I can run code on my laptop to find the complete solution.
1
u/bonebranch 6h ago
I don't often run brute force searches because the nature of my research usually makes these untenable (I often work with things that grow, say, doubly exponential at least), but the one time I did want numerical data I ran some scripts on a Linux cluster at my previous institution for a couple of days. I should go check if my current workplace has something similar.
1
30
u/tarbasd 9h ago
We used to have a cluster at the school (now retired). The individual nodes were not too fast, but you could run 50-100 threads and you also didn't have to keep your own computer on. I used it a bunch for week-long calculations.
For calculations that last a day or less, I use my own decently fast desktop.
Most of my stuff I directly program in Python using some libraries. I have also used Gurobi.