Faz sentido compilar maunalmente a libm? [RESOLVIDO]

1. Faz sentido compilar maunalmente a libm? [RESOLVIDO]

Ismael Felipe Ferreira dos santos
IsmaelSantos

(usa Ubuntu)

Enviado em 24/03/2021 - 11:33h

Olá,

Há algum tempo lembro de ter visto que compilar programas via source era vantajoso pois o executável seria adaptado ao processador e que isso era feito sobretudo em servidores. Gostaria de saber se há de fato alguma vantagem em compilar os programas em vez de instalar os binários pré-compilados via repositórios.

De haver alguma vantagem penso em uma aplicação que me seria muito útil. Faço pesquisa na área de física computacional e os recursos de hardware são limitados tanto na minha casa como no laboratório do grupo de pesquisa. Muitas vezes deixamos programas, feitos em geral em c ou FORTRAN, rodando por várias horas ou dias, poderíamos deixar rodar por semanas se houvesse grande necessidade ou recursos.

Assim que fica a pergunta principal: Para os programas escritos em c, seria de alguma forma vantajoso compilar manualmente todas as funções das bibliotecas math.h e complex.h em vez de usar o famoso -lm?

Caso me incentivem a isso faço um artigo mostrando como fiz/farei.


  


2. MELHOR RESPOSTA

Paulo
paulo1205

(usa Ubuntu)

Enviado em 24/03/2021 - 23:36h

Endosso o que disse o Leandro, acima.

Muitas das funções da libm correspondem a alguma instrução da FPU do processador que já existe há muitos anos (supondo que não estamos falando de tecnologia há muito obsoleta, de uma época em que FPU era um componente opcional e à parte do processador principal da máquina). Acho improvável que tais funções se beneficiem de uma compilação específica para um modelo de processador em particular. Coisas que poderiam se beneficiar de uma compilação direcionada seriam operações vetoriais e outros tipos de SIMD, mas eu creio que tais operações devem representar uma parte muito pequena do que a libm normalmente oferece.

Mas essas impressões não devem ser uma barreira para você experimentar. Vai que o seu programa se enquadra no pedacinho que efetivamente se beneficia de uma recompilação.


... Então Jesus afirmou de novo: “(...) eu vim para que tenham vida, e a tenham plenamente.” (João 10:7-10)

3. Re: Faz sentido compilar maunalmente a libm? [RESOLVIDO]

leandro peçanha scardua
leandropscardua

(usa Ubuntu)

Enviado em 24/03/2021 - 19:38h


Olha, acho q vc não vai obter muita vantagem não. Mesmo q fizesse em assembly. Vc ganharia mais apostando em reescrever o algoritmo p usar multiprocessamento, ou talvez usar outro método de cálculo.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts