10 ms·
Julia receives DARPA award to accelerate electronics simulation
- deleted 6y ago[deleted]
- dreamcompiler 6y agoI'm having a lot of trouble understanding how "just add AI" is going to make electronics simulation 1000x faster.
- adgjlsfhk1 6y agothe TLDR is that for a lot of high dimensional PDE models, you get a better trade off of speed vs accuracy by using a NN for part of the model that is inefficient to calculate the full physics for. This is already having a lot of success in climate modeling, where NN based solutions do a better job of dealing with some atmospheric effects than previous efforts.
- Sukera 6y agoSounds similar to what stockfish (leading chess computer engine) does. In newer versions, position evaluation comes at least in part from a NN, which lead to an improvement in playing strength. edit: similar in approach, not as a 1:1 mapping. Replace a deterministic model with a faster, slightly fuzzy one.
- dreamcompiler 6y agoChess position evaluation is always going to be somewhat subjective and statistical. Electronics simulation is neither; it's physics.
- gugagore 6y agoThis can be a useful connection, but I believe it's worth fleshing out in case it is misleading What's the alternative to using a NN for position evaluation? I can think of two: 1. Do minimax search until you have a winner or a stalemate. Then you have the exact value of the position. Well, this is the problem we're actually trying to solve to begin with, and it's also impractical to do for chess and any interesting game. This is what necessitates an approximation to position evaluation. 2. A human expert writes a position evaluation function. It determines a huge handful of features, a simple example being how many pieces I have - how many pieces you have, and some way to combine those features into a score. In surrogate modeling, you can get ground-truth data to evaluate your approximation against. You're approximating another model that you can compute, it's just too slow for practical use. In chess, we don't know THE position evaluation function. We can certainly get data about it, but we don't know it in the same way we know PDE models. To be clear, I am not saying we _know_ the PDE models are accurate with respect to reality. That's the science part, to determine if the model arising from empirical evidence or first-principles that are themselves arising from empirical evidence, actually summarizes empirical evidence.
- ChrisRackauckas 6y agoThere are ways to surrogatize portions of a simulation, replacing large portions with ML-trained surrogates. There are already demonstrations in different domains (on highly stiff differential-algebraic equations) showing that you can get these kinds of speedups at around 99% accuracy. https://arxiv.org/abs/2010.04004 https://arxiv.org/abs/2010.04004 https://arxiv.org/abs/2103.05244 https://arxiv.org/abs/2103.05244
- vlovich123 6y ago> can get these kinds of speedups at around 1% accuracy Shouldn't this be at around "at around 99% accuracy" or "within around 1% accuracy loss"?
- ChrisRackauckas 6y agoThanks, fixed.
- deleted 6y ago[deleted]
- KenoFischer 6y agoChris has posted the relevant papers in a sibling comment, but let me try to give an intuitive explanation. Say you have some sort of electronic device like an amplifier. It is made out of many individual transistors and parasitics, but its time evolution is overall guided mostly by the amplifier characteristics its supposed to implement plus boundary effects and corrections from the parasitics. So what you try to do is to learn a simpler system of equations that captures the time evolution plus a (highly-nonlinear, complicated) projection that recovers the signals of interest (if you don't care about reproducing interior signals, you can usually get away with a simpler model). Of course it's not obvious that this should actually work (though of course picking a model of the same size as the system plus an identity projection is always possible, so it'll always work for some size of the model being learned, just at that point you don't get a speedup), but our initial results show that it does seem to be very promising.
- amelius 6y agoSince this is based on ML, I would have trouble trusting the results. Can you verify the results with standard mathematical methods? E.g. solve a linear system using AI, then compute the residue and meaningfully interpret it? Would it be possible to apply ML techniques iteratively, and let the error approach zero?
- KenoFischer 6y agoSure, you can always just run the baseline simulation and compare error rates. You can also do fancier analyses to get some rough idea of robustness and maximum error rates (over your particular parameter domain).
- Sukera 6y agoWould this integrate with e.g. Measurements.jl?
- KenoFischer 6y agoFrom an implementation perspective of course, so you can get error propagation on the baseline simulator. For the actual ML part, you'd get Measurements complaining that it doesn't know how to propagate bounds through the surrogate. You can do some estimation of what that propagation would look like, but it's a research project.
- 7_my_mind 6y agoIs scientific computing getting some revival with the advent of quantum computers? From what I could see the niche is relatively small and not well paid, with most jobs somehow tied to the public sector. Not sure how Julia factors into all of this. I don't think the programming language makes that big of a difference, ultimately. Very interesting field at the intersection of all my skills, but I'm hesitant to get into it.
- Trex_Egg 6y agoJust curious, what's your current works involves?
- 7_my_mind 6y agoI'm a math grad student studying numerics and scientific computing actually. But I do not see a future in it as it does not seem to pay well and the relevant jobs are scarce. So it seems risky to get into it as a career when I can pivot to a more profitable SWE role or do something with ML.
- krapht 6y ago1) If you are a US-born citizen and qualify for a security clearance, jobs aren't as scarce as you think. 2) You are right the pay is worse in the public / government side. I will say - you might not believe me now, but it really is true that once you make enough money to pay all your bills, suddenly more money is less motivating than the ability to work on interesting problems. What I just said above supposes that most lab work is interesting, which is not not the case, but I still think it's better than the average SWE's workload at your average tech company, just based on my personal experience having done both at different times in my career.
- ska 6y agoYou could certainly choose a few paths that are likely to pay higher salary that most of the scientific computing jobs you'd likely get. On the other hand, the pay for some of those scientific computing jobs is reasonable, and often the work is more interesting for someone with your background. It's worth bearing in mind that unless you are extremely unusual, you'll need a few years training in industry as well before you are really running on all cylinders. You'll really have to think about your priorities, but it sounds like you have a bit of time to do that. Probably the worst case is "support programmer for a research lab", some people do well there if they love the lab and the work but it tends to combine poor pay with extremely limited options for professional growth.
- d33lio 6y agoLT-Spice is absolute trash and basically why I decided to leave EE for CS in college... among many other reasons! Essentially, because after learning all kinds of math my linear systems prof basically said "yeah, at some point you just have to simulate everything because the math you learned only applies maybe 60% of the time". Granted, I do not think I was exactly destined to be a great electrical engineer. Electronics simulation is fascinating, especially given the AI models used to do this. Layout gets especially complex when rf-traces / layers have to be considered or when you want to have an arrangement of traces to high bandwidth components all be the same length. Interaction between multi-layer vias is also insane (the guy who built the UberTooth1 bluetooth hacking dongle has a great defcon talk on the subject). The best analog I can come up with is the debate / discrepancies between the US and European weather simulation models. Fascinating space, I got to work a few feet away from the Julia team at the Harvard Launch Lab way back in the day at a college internship. Of the few interactions I had with their team they are great people and unbelievably brilliant. If any of you are reading this, my hat's off to your engineering abilities - I'm still impressed by the fact you guys identified an error in intel's x86 instruction sets and yeeted the issue in less than 24hrs.
- ultrasounder 6y agoBeen using LTSpice for the last decade or so and am just fine simulating everything from Buck to current sense circuits to battery monitoring systems to HBridge. Don’t know what your beef is with LTSpice but still can’t get around the fact you quit your discipline for the lack of a better tool. If you didn’t like what you had to deal with why didn’t you pivot to CS and invent a better simulation tool. Just saying.
- d33lio 6y agoI'm really just being cheeky, the writing was on the wall for me about three years in that EE wasn't for me. Granted, I make a great living writing software and honestly have really benefitted from my 67% complete EE degree. Software ppl generally have zero idea how computers work / how to really leverage hardware bits to accelerate certain workloads. The ideal CS education for me is based in EE but also starts with both lisp and C. NOT Python. However, I was a horribly distracted student throughout college so I really should be the last person giving recs for coursework.
- vallas 6y agoWhy isn't Rust top at modeling and simulation yet?
- nicolashahn 6y agoThis is about Julia Computing, the company, not Julia the language.
- kgwgk 6y agoMaybe they are using Rust, then...
- KenoFischer 6y agoWe're not. I do think Rust is a good language though and you may take my word that I have very strong opinions on language design :).
- andrewflnr 6y agoJulia Computing exists to commercialize the Julia language which exists to solve precisely this kind of problem without resorting to a lower-level language. So, probably not.
- kgwgk 6y agoI was joking!
- 6y ago
- KenoFischer 6y agoHuh, did not expect our press release to end up on HN, but I'm the PI on this project, so AMA, I guess. Will jump into the questions already asked here and provide some context.
- Rochus 6y agoWhat was the technology replaced by Julia (i.e. the systems which were 100 or 1000 times slower)? Is the whole factor 1000 because of Julia/LLVM optimizations, or is there faster hardware, or was the old system an interpreter?
- Sukera 6y agoThis is about funding for future work, not payment for achieved bonuses, it seems.
- KenoFischer 6y agoThe 1000x goal here specially refers to algorithmic accelerations. Depending on your baseline simulator, there may also be improvements because Julia's simulation capabilities are extremely fast, but those gains are multiplicative, since we're using our own simulator as a baseline for measuring the algorithmic improvements. Just to be clear though the 1000x is a goal. We've demonstrated the same techniques at about 100x algorithmic improvement (for close to 1000x overall), but haven't quite gotten to that point yet in this domain. It is still a research project at this point. We are quite actively exploring what to do with just the simulator components though, because we think there's a good opportunity to replace some legacy tooling in this space even before factoring in the algorithmic improvements.
- dnautics 6y agoA long long long time ago, I wrote this (currently very unmaintained, and I have no interest in maintaining) julia project, don't know if this is useful to you, but it's pretty clear that there is a LOT of potential for julia in this domain, though if I'm not mistaken, the HDL-stuff is one level above what you're doing in your project -- it would be nice if these sorts of things could be composable: https://github.com/interplanetary-robot/Verilog.jl https://github.com/interplanetary-robot/Verilog.jl
- meepmorp 6y agoFix the headline - it should say "Julia Computing Receives DARPA Award to Accelerate Electronics Simulation by 1,000x" The money is going to a company.
- nicolashahn 6y agoYeah, I think most people on this site are going to first assume the language.
- adgjlsfhk1 6y agoNote that while Julia Computing and Julia are different entities, the former is the employer of most of the top contributors to Julia. Lots of this grant will probably go into paying for additional features for `DifferentialEquations.jl` or compiler work necessary to speed up some of this code.
- kumarvvr 6y agoCan anyone explain the potential benefits of accelerating electronics simulation? Do they want to generate efficient FPGA programs?
- kurthr 6y agoBecause all modern computer chips and electronic systems (e.g. PCBs) rely on electrical simulation for design and build. Typically, these are SPICE based simulators, which are open source and quite old in their methods (you literally set convergence requirements and step times). FPGAs are already digital... meaning that although they (FPGAs) have to be simulated when they are designed, their purpose is digital simulation. Programs are at their heart a discrete digital simplification of the underling electrical operation for the purpose of increasing reliability and allowing greater design complexity.
- eternauta3k 6y agoOpen source? Isn't everyone using Spectre or Eldo?
- kurthr 6y agowhich are built on BSD licensed SPICE at Berkeley: "SPICE (Simulation Program with Integrated Circuit Emphasis) is a general-purpose, open-source analog electronic circuit simulator." https://en.wikipedia.org/wiki/SPICE https://en.wikipedia.org/wiki/SPICE Also see HSPICE, pSPICE, LTspice...
- KenoFischer 6y agoOur particular project is about analog simulation, though DARPA is also funding surrogate modeling efforts in the digital domain. On analog in particular, one significant impetus is speeding up mixed signal simulations, since digital simulators (in terms of seconds of execution simulated per seconds of simulation time) are much faster than analog simulators, so if you want to do a mixed signal simulation, you're generally running it at the speed of analog simulators. For end-to-end simulation, it would be much nicer if you could bring up the speed of the analog simulators to be comparable to the digital simulators. Of course there is a question of how much accuracy you're paying (and we're still finding out what the tradeoff is), but in the kinds of simulations where this comes in, your actually often ok with losing some accuracy, since you can always get some noise coupled into the analog portion, so your control electronics should be robust to slightly weird analog signals anyway.
- oxinabox 6y agoThis seems very promising to me One big part of circuit simulation is solving differential equations. That's the whole inducer, resistor, capacitor thing. Julia has hands down the best toolkit for differential equation solving. Most circuit simulators today are going to be using old methods invented in the 60's-80's. Neglecting the state of the art developments. Someone made a blog post recently comparing the time to simulate with LTSpice vs writng and solving the system in Julia https://klaff.github.io/LTSvDEQ_1.jl.html https://klaff.github.io/LTSvDEQ_1.jl.html this is a very simple circuit, and they still got a 100x speed up. Sure that is neglecting the time it takes to actually extract the differnetial equetion from the circuit. But from what i hear that kind of thing is something this DARPA project will be working on. And sure LTSpice isn't state of the art. But still I find this indicative and promising.
- bravo22 6y agoThe problem is a lot of the models you use are black box characterized models and not differential equations. I don't mean Julia won't speed things up a lot and won't be helpful but your point about modern sim tools using old techniques is not true. Simulation RCL in semiconductors is a huge business where customers have been paying a lot for faster solutions.
- oxinabox 6y agofair enough. I can't say i've seen inside how things things are made. Julia definately has cutting edge for DEs. I doublt LTSpice does, but ORCAD etc might.
- m-ee 6y agoAs someone that actually uses LTSpice I’ve never considered speed to be an issue. The main draws for it are 1. It’s free unlike Altium addons or orcad p-spice 2. Graphical, I’m happy to code things but code literacy varies widely among EEs. Much easier to share results when it looks like a schematic 3. Good enough component library. The time spent finding and inputting component parameters are gonna be way bigger than any savings on the actual computation I mostly work on small embedded systems boards and use simulation to probe behavior of analog sub systems I’m concerned about, rather than simulating the whole board. Maybe more complex designs get more like CFD models where computation time is measured in hours or days. Would love to see someone use this as a backend for an alternative to the major spice programs, LTSpice UI isn’t exactly pleasant, and is unusable on Mac so it wouldn’t take a whole lot to get me to switch.
- amelius 6y ago1000x sounds nice, but can you trust the results? Also, why doesn't the funding go to more general linear algebra (and related) solver software, which can then be used in many physics packages?
- adgjlsfhk1 6y agoNote that DifferentialEquations.jl already has bindings for R and Python, so this has the potential to be used in many physics packages.
- 6pac3rings 6y agoHaving three horses in the race competing for the stated goal is a better bet for results you can at least compare the pro/cons of their approaches to. At next iteration, fuse the best parts and recompete towards the stated goal.
- shrubble 6y agoThe section "SID Scalar and Vector Processor Synthesis" from https://en.wikipedia.org/wiki/VAX_9000 https://en.wikipedia.org/wiki/VAX_9000 talks about this need to have better tools and even a bit about AI: SID was an artificial intelligence rule-based system and expert system with over 1000 hand-written rules. In addition to logic gate creation, SID took the design to the wiring level, allocating loads to nets and providing parameters for place and route CAD tools. As the program ran, it generated and expanded its own rule-base to 384,000 low-level rules.[19][20] A complete synthesis run for the VAX 9000 took 3 hours. Initially it was somewhat controversial but was accepted in order to reduce the overall VAX 9000 project budget. Some engineers refused to use it. Others compared their own gate-level designs to those created by SID, eventually accepting SID for the gate-level design job. Since SID rules were written by expert logic designers and with input from the best designers on the team, excellent results were achieved. As the project progressed and new rules were written, SID-generated results became equal to or better than manual results for both area and timing. For example, SID produced a 64-bit adder that was faster than the manually-designed one. Manually-designed areas averaged 1 bug per 200 gates, whereas SID-generated logic averaged 1 bug per 20,000 gates. After finding a bug, SID rules were corrected, resulting in 0 bugs on subsequent runs.[19] The SID-generated portion of the VAX 9000 was completed 2 years ahead of schedule, whereas other areas of the VAX 9000 development encountered implementation problems, resulting in a much delayed product release. Following the VAX 9000, SID was never used again. [Not sure why]
- oxinabox 6y agoA modern circuit simulator, that has a fully featured programable API, that can be run from a real modern programming language, would be a dream. Every simulator i have used has been pretty limited in that way, or at least those features were not well advertized. Even the insanely expensive ones. I mean the most expensive ones (like $100K liscense type deals, like Cadence) are if anything even less modern from a user interaction perspective. My first academic paper (https://www.oxinabox.net/publications/White2015PsoTransistorSizing.pdf https://www.oxinabox.net/publications/White2015PsoTransistor...) was based on doing a search over parameters for the transistors being used in a circuit. The way that whole thing work was by string mangling the netlist file to update the parameters. Triggering the simulator on the commandline. Getting it to output a CSV of the signals. Parsing that CSV, and detecting edges and then measuring timing that way. Then throwing it at a particle swarm optimizer to fine a new one. That sucks from a user experience. It's a super cool way to solve problems though. that would be so easy with a real API. Further, with julia being a differnetiable programming language, rather than having to use a particular swarm optimizer to search, I could have been differentiating it, and using some sophisticated gradient descent like LBGFS etc. I hope that some of the general tools like this will be an outcome of this project.
- multiply 6y agoA lot of semi companies have built their own simulation environments because the EDA vendor's provided tools are very limited in what they can do and difficult to use. Many users go to Python, Excel or MATLAB because the programming/math capabilities of the EDA tools are inadequate. Over time these home-grown environments become a burden and the developer disowns it and it becomes a headache. The EDA tools have no ecosystem you can hook into and they don't really care about the user trying to put the simulators into a flow to solve their problem. It is a bunch of point tools each with their own embedded interpreter that don't play together. I sure hope there is a plan to create a better set of tools so I can write custom netlist checks and do something novel (like get derivatives out of the simulator) and in-memory (no slow disks) and run custom Julia checks during simulation. Julia is a much better match because running Python or MATLAB code within the simulator is way too slow. I'll keep watch for sure.
- pmuk 6y agoSo the machines are gonna start building the machines?
- ChrisRackauckas 6y agoThat's the plan. Don't worry, what could go wrong?
- whaaswijk 6y agoWith current EDA tools they already are :-)
- xvilka 6y agoI wish BioJulia[1][2] (bioinformatics ecosystem with Julia language) would get a similar attention. Currently, they seem largely underfunded[3]. Global pandemic highlighted importance of such projects, I hope more and more people would participate into the FOSS-based computational biology and medicine. [1] https://biojulia.net/ https://biojulia.net/ [2] https://github.com/BioJulia/ https://github.com/BioJulia/ [3] https://opencollective.com/biojulia https://opencollective.com/biojulia
- jakobnissen 6y agoI'm one of the main developers of BioJulia. I believe our main issue is lack of developer manpower, and not necessarily lack of funds. Of course, if we got enough money to actually employ a developer, that would be amazing. It's just not very realistic. Furthermore, having BioJulia be developed by working scientists has its advantages. If you, or anyone else, is interested in BioJulia, do think about making a contribution to your favorite package, it would be very welcome. Developing in Julia is extremely satisfying, as you get so much bang for your buck, while still being able to create highly efficient code.
- akudha 6y agoCan a programmer with zero knowledge of bioinformatics be of help too? Or do you need a bio background?
- planet-and-halo 6y agoI'd like to second this question. I'm very interested in bioinformatics as a field, but no background. Would be happy to devote some free time but I wouldn't want to be counterproductive.
- ViralBShah 6y agoThe way to do this is to find non-domain specific tasks in these projects, and make useful contributions to the team - and slowly learning as you go along. Website, CI, benchmarking, helping out new users, pointing out unclear docs, writing a tutorial as you learn, etc. are all great ways to get involved.
- nsxwolf 6y agoSo, at 1000x the current fastest speed, how close does simulation get to the speed of real circuits?
- KenoFischer 6y agoDepends on the time scales of the circuits (as long as your baseline simulator isn't dumb) ;). For example, consider LRC circuits that have an analytic solution - you can basically simulate them instantly. The primary goal here is to bring analog simulation to similar time scales as digital simulation on realistic problems.
- ericmay 6y agoHow are Julia Computing and Julia the programming language related? Is it similar to R and R Studio in a way?
- KenoFischer 6y agoSee here: https://julialang.org/blog/2019/02/julia-entities/ https://julialang.org/blog/2019/02/julia-entities/
- ericmay 6y agoThank you!
- sjkelly 6y agoGate level sims would be sweet. Yosys has the CXXRTL backend that may nicely dovetail into this too.
- choeger 6y agoMaybe of interest in that context: https://github.com/ModiaSim/Modia.jl https://github.com/ModiaSim/Modia.jl The authors of that tool have a strong background in modeling and simulation of differential algebraic equations. Not so much in designing DSLs, though, so there maybe some technical oddities. But I expect the simulation aspect to be quite decent.
- ChrisRackauckas 6y agoModia.jl is great! Though note that there are other M&S DAE libraries in Julia which stray from the Modelica DSL syntax. For example, ModelingToolkit.jl can do it directly by modifying Julia code: https://www.stochasticlifestyle.com/generalizing-automatic-differentiation-to-automatic-sparsity-uncertainty-stability-and-parallelism/ https://www.stochasticlifestyle.com/generalizing-automatic-d... or it can work via a component-based modeling DSL: https://mtk.sciml.ai/dev/tutorials/acausal_components/ https://mtk.sciml.ai/dev/tutorials/acausal_components/
- ViralBShah 6y agoModia.jl is built by Hilding Elmquist, Martin Otter and their collaborators. These are some of the best folks in the world - Hilding's thesis in 1978 described equation oriented modeling. It had to wait until computers became powerful enough in the 90s to become broadly usable. https://people.inf.ethz.ch/fcellier/Res/Soft/Dymola_engl.html https://people.inf.ethz.ch/fcellier/Res/Soft/Dymola_engl.htm... We've had the benefit of learning from them and their presentations at JuliaCon and collaborating. More is coming. In the meanwhile - do see this JuliaCon talk by Hilding: https://www.youtube.com/watch?v=hVg1eL1Qkws https://www.youtube.com/watch?v=hVg1eL1Qkws
- stochastimus 6y agoI enjoy seeing this sort of press for Julia. One thing I’ll say for the language is that it is good with elegant high level abstractions for productivity while at the same time being able to go as low-level as you need for optimization. My company uses Julia for our text structuring ML. From go we communicate with the Julia binary using protobufs. I have no complaints and have enjoyed my experience with Julia.
- fishmaster 6y agoAre you doing your NLP with Flux?
- stochastimus 6y agoNope, completely custom, with a big chunk written prior to Flux anyway, but I’ve seen Flux and I’ll be looking for opportunities to play with it in future projects for sure.
- deleted 6y ago[deleted]
- tomrod 6y agoThis is the sign that Julia had arrived as a language. Kudos!
- KenoFischer 6y agoThanks
- omot 6y agoWhatever happened to Samsan Tech, they had a really impressive year and then just disappeared off the face of the earth.
- the__alchemist 6y agoI love the goal, and the idea to use Julia. I hope the emphasis on machine learning and AI is for the purposes of the press release, and it's not forced into the core of the project. If it turns out to be a good fit, great. If not, skip it.
- KenoFischer 6y agoThe funding is particularly for AI exploration, but we are building out a strong foundation of modern analog design tooling in julia as well. If the AI works like we hope, it'll be a nice bonus for situations where it is applicable, but I think there is plenty of opportunity to provide value even without it.
- transfire 6y agoAnyone know how much $ ? This might give a nice boost to adoption of Julia. And hopefully this spending trickles down to further improve the language itself.
- posterboy 6y agoWhy not Haskel? There are a bunch of projects on that front, too
- adamnemecek 6y agoSlow.
- teleforce 6y agoCall me skeptical but to claim 1000x improvement for circuit simulation is at least hyperbole or outright lying. I will love to be proven wrong though. This by the fact that Julia is still depending on third party numerical libraries, e.g. OpenBLAS that depends on faster numerical languages like Fortran. If you want to see next generation circuit simulation and automation that already working check out JITX. The simulator is using their advanced LB Stanza language which similar if not better than Julia[1]. This is the same team from Berkeley that proposed CHISEL and FIRRTL. Other promising efforts on next generation digital and analog circuit design are from MLIR by LLVM team and LLHD from ETH Zurich [2][3]. [1]http://lbstanza.org/ http://lbstanza.org/ [2]https://github.com/llvm/circt https://github.com/llvm/circt [3]http://llhd.io/ http://llhd.io/
- KenoFischer 6y agoThose efforts are quite different, focusing primarily on the design side with a focus on digital, while our effort is on ML-accelerated simulation of continuous time analog domain problems. I've met Chris Latter many times, and I'm pleased to see him work on tooling improvement in this space. He has a very good design sense for what compilers ought to look like. I've also met Patrick Li and we had an extensive discussion around the design space of multiple dispatch, which is of course Julia's core paradigm. I hadn't realized that Stanza was in use at JITX, but I'm glad to see it since there's enormous room for PL-based improvements. They are very different efforts though, so I'm somewhat confused by the off-hand dismissal of our work, without seeing any of the details. One additional point: Julia depends on OpenBLAS not because Fortran is faster, but because doing the architecture tuning for all supported architectures and sizes is a bit of a pain and for standard BLAS problems there's very little reason to switch. We do have pure Julia packages that outperform OpenBLAS, but nobody has gone through the effort of replacing the base usage of BLAS usage and completing the pure Julia packages to achieve 100% API coverage. There's just no good reason to as long as the vendor BLAS packages (or OpenBLAS) work fine.
- teleforce 6y agoMost of the methods I've mentioned apart from FIRRTL can be used for analog design. In fact, the JITX's product in particular only support ML-accelerated analog based design mainly circuit board level at the moment but nothing stopping them for doing it for both analog and digital design later on. Don't get me wrong I'm not dismissing your work, I'm just dismissal of the outrages 1000x claim, as they say "extraordinary claims require extraordinary evidence"(ECREE). I believe Chris Lattner and Patrick Li will probably cringe to hear the 1000x claim ;-). Like I've mentioned before, I love to be proven wrong. Regarding OpenBLAS, it will be very good to have native Julia alternative as you've claimed. It is nothing new to be better than OpenBLAS since D language has done it with probably less than 10x (100x?) man power compared to Julia several years back[1]. [1]http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/glas-gemm-benchmark.html http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/...
- joshgoldman 6y agoWill probably be used for nefarious reasons
- nazbuck 6y agoSo Julia's a fed now, cool uninstalling
- siproprio 6y agoI guessing that as long as you're not trying to plot the results, julia is fast?