inducer / inducer/arraycontext

How should lazy `actx.compile` interact with memoization (on the input end)?

Aberta
#99 0 comentários 0 reações 0 responsáveis Ver no GitHub
Linguagem predominante
Python
Estrelas
9
Forks
11
Merge médio
17h 12min
PRs com merge (30d)
2

Descrição

This is a longer-shot companion issue to https://github.com/inducer/pytato/issues/164 (and #100):

Suppose an `actx.compile`d function is passed an array container (for the sake of argument, imagine a mirgecom `ConservedVars`) that somehow holds on to already-computed, dependent state that is the subsequently used in the `compile`d function. Right now, any such association is destroyed when "placeholderizing" the inputs. It'd be nice to instead realize that something we're about to (re)compute has already been computed and just use it instead.

A few (substantial) challenges:
- Unless we retain the object identity of the data passed in as a placeholder, we have no way of finding the existing state.
- Even if we can find it, we can't really reliably generate an identifier for it.

cc @kaushikcfd @mtcam

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Direção de pesquisa

Comece lendo a issue complementar vinculada #164 e a issue #100 e, em seguida, rastreie como actx.compile transforma suas entradas em placeholders. Investigue se a identidade dos objetos de entrada e o estado dependente podem ser retidos e identificados de forma confiável para memoization. O trabalho estaria concluído quando houvesse um design definido para reutilizar o estado já calculado, mas esta issue não especifica uma implementação nem um teste de aceitação.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
python
Domínio
backend
Tipo de issue
Funcionalidade
Dificuldade
5/5
Tempo estimado
Mais de uma semana
Status de atividade
Estagnada
Clareza
Precisa de esclarecimento
Facilidade para iniciantes
25/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.