Erros, bugs, perguntas - página 2873

 


O carregamento do EX5 falhou
 

Erro crítico durante a execução

struct pack(8) A {
typedef void (*fn)();
        fn f;
};
void OnStart() {}

Resultado: O carregamento de EX5 falhou

 
A100:

O alinhamento das estruturas afecta a velocidade de execução?

 
fxsaber:

O alinhamento das estruturas afecta a velocidade de execução?

Em alguns casos, aqui está uma citação:"Na maioria dos casos, não precisa de se preocupar com o alinhamento, uma vez que o alinhamento por defeito já é óptimo.Mas em alguns casos, uma melhoria significativa do desempenho ou poupança de memória pode ser conseguida especificando um alinhamento personalizado para estruturas de dados".

 
A100:

Em alguns casos, aqui está uma citação:"Na maioria dos casos não precisa de se preocupar com o alinhamento, uma vez que o alinhamento por defeito já é óptimo.No entanto, em alguns casos pode conseguir melhorias significativas de desempenho ou poupança de memória especificando um alinhamento personalizado para estruturas de dados".

Apenas um exemplo disto.

 
fxsaber:

Pelo menos um exemplo de tal.

Tenho alinhamento devido à necessidade - citação da documentação: "Oalinhamento dos campos de estrutura pode ser necessário ao trocar dados com bibliotecas de terceiros (*.DLL), nas quais esse alinhamento é aplicado".

Tentar medir todos os valores da embalagem e comparar a velocidade

 
A100:

Experimente jogar através de todos os valores do pacote e compare as velocidades.

Temos de decidir qual o código a medir.

Se bem entendi, o alinhamento das classes não é fornecido. Ou seja, é bem possível que ao trabalhar com um conjunto de objectos de classe (não ponteiros), possa ser razoável substituir os campos de classe por uma estrutura alinhada.

Seja como for, não estou a falar do assunto.

 
fxsaber:

Se bem entendi, o alinhamento das classes não é fornecido. Ou seja, é possível que ao trabalhar com um conjunto de objectos de classe (não ponteiros), possa ser razoável substituir os campos de classe por uma estrutura alinhada.

Agora experimentei as classes de embalagem - o tamanho muda

 

Uma pergunta sobre a compra de uma biblioteca (e não de um consultor) ao Market.

Quero utilizar a biblioteca na minha investigação. Por conseguinte, deve funcionar em quaisquer contas e terminais.

Será isto possível para as bibliotecas do Mercado?

 
fxsaber:

Pelo menos um exemplo disto.

Duvido que muitas pessoas utilizem hoje em dia a optimização de dados, na maioria dos criadores de jogos, mas mesmo aí todos têm os seus próprios motores de jogo prontos a utilizar, que já estão optimizados

pesquisado por aí, imho se houver alguma recomendação específica, pesquisaria aquihttps://www.ibm.com/support/knowledgecenter/ru/

tentou pesquisar, mas não funcionou - existem muitas variantes de consultas, aqui está mais perto do assuntohttps://www.ibm.com/support/knowledgecenter/ru/ssw_aix_72/performance/cache_tlbs.html

Procurei por "pacote de estrutura" e "desempenho de estrutura".



se verificar, deve ser uma estrutura de cápsula e tem de a escrever o mais distorcida possível, ou seja, pega em todos os tipos de dados (longo, int, curto, char, duplo, float) e cria 15 campos e mistura os campos por tipos de dados, para que possa alinhar estes campos com a directiva de pacotes, pelo menos no limite da palavra informática

Pode também tentar copiar estruturas, passá-las como parâmetros para funções e alterar o conteúdo dos campos


mas, imho, terá uma diferença palpável se o tamanho total de tais dados (conjunto de estruturas) for pelo menos um par de megabytes para encher o cache do processador tanto quanto possível