Genmo is a vertically integrated AI company pushing the boundaries of what's possible with visual generative models.
Our team is building a future where people and AI collaborate seamlessly to create diverse modalities such as images, videos and more—breaking down the barriers between creative verticals. We're the folks who made diffusion models work, and created the first text-to-3D foundation models.
You can play an instrumental role in our mission to build cutting-edge technology, and radically different user interfaces, with an ambitious long-term vision of establishing Creative General Intelligence.
We’re hiring for several roles:
- Founding Full Stack Engineer - Next.js, Tailwind CSS, React
- Founding Infrastructure Engineer - GCP, AWS, Kubernetes
- Founding Data Engineer - data collation for foundation models
- Research Scientists - LLM and diffusion model training
Join us if you have a passion for AI and are ready to help shape the future of creative tech!
Hi @sirianth, this is Ajay. Are you talking about the https://ajayj.com/dreamfields colab? Feel free to dm me on Twitter (@ajayj_) or email me if you're facing bugs. Dependencies keep shifting, really should have pinned versions originally...
Zooming in, their map reports that vaccination rates in 94707 are now over 100% -- it's the gray region north of UC Berkeley. Perhaps folks are commuting in to 94707 to receive doses?
Yep! You got the motivation exactly right. The goal is automatic program "rejuvenation" w/o all the engineering and maintenance costs. Revectorization in the compiler allows programmers to capture much of the performance gain possible with wider instruction sets without having to write and maintain multiple code paths. It can be a big pain to understand and rewrite this vector code -- especially if it's in some external library or another team's code. But agreed that some really nice results are possible with the right engineering such as in parsing.
Do the binaries really get into the 200 MB range from different code paths, or is that due to data?
Thanks! The tests were run on a single thread since the source kernels & test programs were single threaded. It was important for us to find the largest possible instruction graphs to revectorize at a time so that the whole kernel or most of the kernel runs with the target instruction set. If our search terminated early due to e.g. a pair of low-width instructions that the pass didn't know how to merge, there's a performance loss, so we spent quite a bit of time to synthesize comprehensive lookup tables and implement shuffle merging and reductions. My impression is that kernels running exclusively AVX512 rather than interleaved scalar/low width code generally perform better than the low width code even with downclocking, but please let me know if that's not the case.
We originally ran experiments on a multisocket lab server which should have a faster clock, but I don't have a record of the specs. That server did fine for SSE to AVX2 conversion, but didn't support AVX512 so we ultimately used Google Cloud VMs.
Two years ago, I wrote an LLVM compiler pass that automatically upgrades SSE or AVX-2 code to AVX-512 when those instructions are available. It's helpful for getting performance gains for hand engineered code that you don't want to touch. We saw some good gains on integer workloads (unpacking, useful for databases - something I'd call "regular code"): 1.16x speedup going from SSE to AVX-2, and 1.43x speedup going from SSE to AVX-512. Even better speedups are available for FP workloads, though hand-writing the AVX-512 version can work a lot better since programmers can exploit the full range of new instructions available in AVX.
Loss aversion tells us that gains and losses have different emotional impact. In particular, perceived losses supposedly have a strong negative impact on people. [1] If Lyft employees value their shares at the IPO price, they might be feeling a loss all the way from 72 to 61.
In some recent work from my group [1], we reduce the complexity of keeping up with new SIMD ISAs by retargeting code between generations. For example, a compiler pass can take code written to target SSE2 (with intrinsics) and emit AVX-512 - it auto-vectorizes hand-vectorized code. With a more capable compiler, if the ISA grows in complexity, programmers and users of libraries get speedups without rewriting their code or relying on scalar auto-vectorization. However, the x86 ISA growth certainly pushed some complexity on us as compiler writers - we had to write a pass to retarget instructions!
I used this article (and some other pieces) to help with some robotics research in Python a few months ago. Behavior trees are fantastic abstractions that definitely simplify FSM code, but I found that working within the constraints of decorators could really complicate behavior architectures that can instead be implemented more linearly. Specifically, I wanted to have an overall obstacle avoidance behavior separated from individual movements, but ended up implementing an obstacle avoidance function library totally separate from the BT.
In a sense, it's the replacement that someone who has their bike stolen is paying for, not the original. If it gets stolen, you'd need to get a ride home, find a new bike without transportation for a bit, and put in a decent amount of time and money to fix a bicycle at that price.
When I make a message, the URL seems to use zeroclipboard for Flash based click-to-copy, but I have Flash blocked with an extension and click to play. It would be nice if the message URL could be manually selected, like with bitly.
Where the percentage correct is significantly below 50%, it seems like there are very widespread myths being accepted, possibly dangerously. Malaysia scored 8% and Russia scored 18% on the second to last question (Antibiotics kill viruses as well as bacteria) - that's scary to me from a public health standpoint.
Many apps use several of these business models at the same time - buy in game currency with money or watch in game sponsorships to earn it, then use that currency to buy virtual items.
What does %% do? The documentation says: a %% b is the same as (a % b + b) % b, but what is the difference between "true mathematical modulo" and the standard modulo?
"against the development, use or distribution of Open Source Software or Home-Grown Systems to the extent that such Open Source Software and Home-Grown Systems are not Bundled with proprietary software"