0 votos
752 visualizações

Há vários outros posts que mencionam a CPU, mas não tenho certeza se meu problema está diretamente relacionado, então abri um novo tópico. Desculpem se eu deveria ter respondido a um anterior.
Sempre achei o PT8 um pouco lento, mas tenho muitos recursos rolando juntos, então achei que era só isso. Esperava que o PT9 fosse mais rápido, mas é exatamente o mesmo. Geralmente tenho o Chrome aberto, mas mesmo quando não tenho, não parece acelerar. Algumas pesquisas são muito rápidas, mesmo com muitos resultados (ex.: “reckon” encontrou 275 resultados em menos de um segundo), mas outras são muito lentas e, na verdade, nunca retornam nenhum resultado (ex.: “. (see” levou vários minutos antes de eu ter que usar o Gerenciador de Tarefas para fechar o PT, várias vezes). Quando isso acontece, a CPU parece estar quase em 100%.

Estou usando Windows 10 (1903) e tenho 16 GB de RAM. O processador, caso signifique algo para alguém, é:
imagem

Algumas ideias sobre como acelerar o PT em geral ou fazer com que todas as pesquisas funcionem?

Tradução automática de English
Paratext por (213 pontos)
reexibida | 752 visualizações

3 Respostas

0 votos
Melhor resposta

Por favor, reporte esse tipo de problema via Help > Give feedback. Nenhuma pesquisa deve levar mais do que alguns segundos em um computador decente.
Esse tipo de problema geralmente vem do fato de que criamos uma expressão regular internamente para fazer a pesquisa, e tivemos alguns casos em que a expressão regular gerada cria um loop infinito com um look-behind negativo (conhecido como backtracking catastrófico e nunca termina). Parece que você encontrou outro caso desse problema.

Tradução automática de English
por [Expert]
(16,7k pontos)

reexibida

Reportado

Tradução automática de English

Você linkou para a documentação do criador do RegexBuddy. Eu uso isso o tempo todo para me ajudar a construir boas expressões regulares, mas sei que existem diferentes sabores de RegEx que têm sintaxes diferentes. O RegexBuddy permite alternar entre os sabores apropriados, mas nem sempre tenho certeza de qual é o certo para selecionar.

Alguém pode me dizer as escolhas corretas do “RegexBuddy” para os sabores de regex usados nos seguintes lugares:

  • Paratext 9 Find/Replace
  • Paratext 9 RegexPal
  • Changes.txt, FinalChanges.txt, PrintDraftChanges.txt, DBLchanges.txt, etc
  • SIL Encoding Converters
  • Grep Styles in InDesign
Tradução automática de English
0 votos

Bem, você certamente encontrou a melhor expressão de pesquisa para os desenvolvedores testarem. Acabei de pesquisar por
. (see
um projeto bíblico completo e comecei a cronometrar. Desisti após 4 minutos e meio e cancelei a pesquisa. Tenho um i7 de 10ª geração com 6 núcleos e 16 GB de RAM, então isso vai travar o computador de qualquer um.

Apenas testei o 9.1 e ele não faz melhor.

Tradução automática de English
por [Moderator]
(1,3k pontos)

reexibida

Se você desmarcar a caixa “Ignorar diferenças de espaços em branco” (em More>>), isso faz alguma diferença?

Isso não é realmente uma solução, já que você pode muito bem querer corresponder a um ou mais espaços, mas pode dar uma pista sobre o que está causando a lentidão.

Tradução automática de English

12 segundos. Parece que temos um problema com a opção “Ignorar diferenças de espaços em branco”.

Tradução automática de English
0 votos

Só posso responder pelo PT9 Find/Replace, RegexPal, PrintDraftChanges.txt e DBLchanges.txt. Todos eles usam o mecanismo de expressões regulares embutido do .Net: C# (.NET 2.0–4.8 & .NET Core 1.0–3.0).

Tradução automática de English
por [Expert]
(16,7k pontos)

reexibida

Escondido neste texto inofensivo está algo muito importante. Você está dizendo que o Paratext 9 RegExPal agora usa o mesmo sabor de expressão regular que o Paratext Find/Replace? Isso é enorme e muito bem-vindo, embora eu tenha que revisar minha biblioteca de regex. Totalmente vale a pena.

Tradução automática de English

Eu acho que sim. É um pouco complicado.

No Paratext 7.x, o RegExPal usava Python para fazer pesquisas de expressões regulares. Para simplificar o código no Paratext 8, mudamos para usar IronPython, que é uma implementação de Python usando .Net. Olhando o código-fonte do IronPython, parece que ele usa o mecanismo RE do .Net para implementar as expressões regulares do Python.

No entanto, como há pequenas diferenças entre o Python normal e as implementações de expressões regulares do .Net, estou supondo que o IronPython deve fazer alguns pequenos ajustes nas expressões para torná-las compatíveis com a implementação do .Net. Não tenho 100% de certeza se ele faz algum processamento da RE para fazê-la funcionar ou se essas mudanças podem tornar o IronPython ligeiramente diferente do .Net regular. :sweat_smile:

Tradução automática de English

Eu observaria que, na pesquisa, as quebras de linha são ignoradas, então você não pode pesquisar por algo como \\s .* para encontrar cabeçalhos de seção. Mesmo que você inclua o (?-s), as novas linhas são ignoradas.

Tradução automática de English

anon848905, a restrição que você nota no diálogo de Pesquisa é problemática. Nos últimos meses, muitas das expressões que compartilho com os usuários não funcionam mais (se estiverem no pt9) devido a essa realidade de “ignorar quebra de linha”. Eu frequentemente uso “até” via classes negativas… as mais comuns sendo

  • até uma nova linha: [^\r]+
  • até o próximo marcador (na mesma linha) [^\r\\]+

Essas expressões (ou técnica) para limitar a pesquisa a um contexto não funcionam mais.

Eu mencionaria novamente que isso é problemático para dar a outro usuário que não quer se aventurar no RegexPal, ou um usuário que precisa corrigir muitos problemas um por um no Paratext.

Tradução automática de English

Uma coisa que você pode fazer para compartilhar uma pesquisa RegEx complexa com outros usuários é exportar a lista do RegExPal, ajustá-la um pouco com um editor de texto e enviá-la a eles para abrir na Janela de Lista.

Tradução automática de English

Perguntas relacionadas

0 votos
1 resposta 194 visualizações
Two of our translators are reporting PT 7.5 freezing on their computers. They are both Windows 8.1 and PT is up-to- ... what PT was doing that made this happen? Thank you, mnjames
mnjames 1,9k perguntada Jun 23, 2015
Welcome to Support Bible, where you can ask questions and receive answers from other members of the community.
For where two or three gather in my name, there am I with them.
Matthew 18:20
3,045 perguntas
6,005 respostas
5,671 comentários
2,026 usuários