Feature request: vectorized finite difference evaluation
评估
- 难度
- 5/5
- 预计耗时
- 一周以上
- 新手友好度
- 45/100
- Issue 类型
- 功能
- 描述清晰度
- 基本清楚
- 活跃度
- 冷清
- 技术栈
- julia
- 领域
- performance
调研方向
首先阅读现有的 FiniteDiff 和 AutoFiniteDiff API,以及 issue 中手动向量化的 GPU 使用场景。确定 dims 参数应如何表示逐行有限差分切向量,以及输出形状应如何映射到 Jacobian。完成的标准是,通用化的 API 可以通过一次函数调用执行向量化求值。
由索引模型根据 Issue 内容生成。
描述
I have an implicit function that is extremely expensive to evaluate. However, it is fully GPU parallelized, in that if a matrix is provided, then each row is evaluated in parallel. For this particular function, the output is a matrix of size = (something, number of rows)
Doing finite differences through this is then easily parallelizable by making each row be a finite difference "tangent" (sorry if I'm misusing that word), so that the full Jacobian can be constructed in one single function evaluation as opposed to many evaluations.
I am doing this now manually, but it would be nice if this functionality could be generalized into FiniteDiff. perhaps a dims argument could be provided to AutoFiniteDiff specifying the dimension about which the evaluation is vectorized (in my case across the rows, so dims=1).
- 主要语言
- Julia
- 星标
- 305
- 派生
- 42
- 平均合并
- 24 分钟
- 30 天内合并 PR
- 2
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
JuliaDiff/FiniteDiff.jl 的其他 Issue
-
tagbot-manual
难度 2/5 1-3 小时 新手友好度 55/100
JuliaDiff/FiniteDiff.jl#218 ·
-
难度 3/5 1-2 天 新手友好度 45/100
JuliaDiff/FiniteDiff.jl#199 · 3 条评论 ·
-
StridedArrays未关闭
难度 4/5 3-5 天 新手友好度 25/100
JuliaDiff/FiniteDiff.jl#158 · 1 条评论 ·
-
难度 5/5 一周以上 新手友好度 25/100
JuliaDiff/FiniteDiff.jl#157 · 1 条评论 ·
-
难度 5/5 一周以上 新手友好度 20/100
JuliaDiff/FiniteDiff.jl#150 · 1 条评论 ·
查看 JuliaDiff/FiniteDiff.jl 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 70/100
SciML/OrdinaryDiffEq.jl#4875 ·
维护者通常 3 天内回复
-
documentation
难度 2/5 1-3 小时 新手友好度 62/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 66/100
SciML/NonlinearSolve.jl#1372 ·
维护者通常 1 天内回复
-
Truncated discrete ccdf and logccdf return incorrect values at the lower atom可能已有人在做 关联的 PR 仍在进行中或已合并。 未关闭
难度 2/5 1-3 小时 新手友好度 82/100
JuliaStats/Distributions.jl#2095 ·
-
documentation 📜 microphysics💧 ❄️
难度 2/5 1-3 小时 新手友好度 63/100
NumericalEarth/Breeze.jl#1073 ·
维护者通常 1 天内回复