Mostrando postagens classificadas por relevância para a consulta dreamcast. Ordenar por data Mostrar todas as postagens
Mostrando postagens classificadas por relevância para a consulta dreamcast. Ordenar por data Mostrar todas as postagens

Linguagem Go utilizada para rodar Diablo no Dreamcast

Go runtime for Dreamcast using gccgo and KOS

Linguagem Go utilizada para rodar Diablo no Dreamcast


 O Gerente de engenharia de software da Red Hat, Panagiotis Georgiadis escreveu eu seu perfil no X:
"Eu tornei possível escrever código golang para o Sega Dreamcast. Sim, o console de 1999. Sim, Go de verdade com gorotines e channels. Aqui está uma intro de Diablo rodando no hardware real." 


 Panagiotis descreve que Golang para Dreamcast fornece as mesmas características (garbage collection, goroutines, channels e as funções do core runtime) mas que substituiu o runtime padrão do Go por um uma implementação mínima (o libgodc) projetada especificamente para o Dreamcast de acordo com as especiações: e sem sistema operacional¹.

Limitações

 Panagiotis disponibilizou uma documentação sobre as limitações da biblioteca libgodc que é essencial entender para escrever programas Go para Dreamcast.


 Algumas de suas limitações estão relacionadas no total de memória RAM (apenas 16MB de RAM sendo distribuídos para o KOS, seus drivers e malloc; GC; pilhas; seu código. Ele não possui memória virtual, não possui swap, e não possui segunda chance e caso ocorra de ultrapassar esse limite, o jogo crasha), o processador ser single-core SH-4 operando a 200MHz; os tempos de pausa que o garbage collection podem levar cada frame leve 16.6ms ou até causar stutter; pilhas fixas a 64k; sem Parallelismo (M:1); é Cooperative e não preemptive; alguns recursos não implementados ou algumas implementações limitadas. Há mias detalhes sobre limitações que podem ser lidos aqui, mas apesar destas diferenças, podemos escrever código go normal, as rotinas go funcionam, channels, mapas, slices, interfaces funcionam.

 O Go runtime para Dreamcast depende do gccgo e do KOS (KallistiOS).



 O Go para Dreamcast está disponível sob a clausula 3 BSD porém, algumas partes estão sob outras licenças como o brkout (que é um port Go do jogo original desenvolvido por Jim Ursetto) que está sob GPLv2.

 Eu como um apaixonado por Dreamcast fico muito feliz de ver a galera de Linux envolvida com o console.


¹Apesar de se ver escruto no Dreamcast Windows CE, O Dreamcast não possui sistema operacional instalado nele e sim em sua mídia.


Da Sega ao Linux

Dreamcast foi um baita console da Sega que me conquistou na época que foi lançado. Uma pena que essa parte da Sega não existe mais pois era muito promissora para nós (e acredito que isso gerou um certo atraso no avanço dos consoles).

Para nossa sorte surge disso o j-core. O j-core é baseado no processador SuperH da Hitachi tendo as versões j2 baseado no SH2 (processador do Sega 32X e do Sega Saturn e que não possui MMU), j4 baseado no SH4 (processador do Dreamcast e é esse que eu quero :) e uma versão chamada j86 que seria uma versão de x86 do j-core.

Se não assistiu o vídeo ainda, não tem problema, confira logo abaixo:


Para quem duvida do poder do hardware de um console, teve até mesmo um cara que usou um Dreamcast como roteador e ensinou como fazer tal construindo um Linux do zero. O cara criou um projeto chamado LinuxDC (Linux on DreamCast) em que ele disponibilizar o patch para transformar o DreamCast como firewall e VPN. Documentação muito show.

Algumas observações e correções feitas pela galera que assistiu o vídeo (valeu pela força galera :)
  • O PS3 foi utilizado na Unicamp também para realizar pesquisas. Quem quiser saber mais, basta clicar no link abaixo.

  • O termo correto para o CD dos jogos do Dreamcast não é CD e sim GD-ROM. Eu sempre chamo de CD porque o nome completo do GD-ROM do Dreamcast é o Gigabyte CD-ROM (por isso meu hábito de chamar unicamente de CD). Uma propriedade intelectual a Sega que armazenava até 1.2GB.
  • Spartan não é um processador e sim FPGA, um circuito programável (valeu pela observação José :)
http://j-core.org/
Link para o LinuxDC, basta clicar aqui
Unicamp utiliza Playstation 3 para realizar pesquisas
http://0pf.org/j-core.html
https://lwn.net/Articles/647636/
http://events.linuxfoundation.org/sites/events/files/slides/Turtles%20all%20the%20way.pdf
http://j-core.org/talks/ELC-2016.pdf
http://s3.eurecom.fr/~zaddach/docs/Recon14_HDD.pdf

Core Semiconductor possui sua própria versão o processador do SEGA Saturn para IoT

Core Semiconductor tem como um de seus produtos, o processador J2
Core Semiconductor tem como um de seus produtos, o processador J-core
 Desde mais de 2017 eu venho falando sobre o re-desenvolvimento dos SuperH que é uma família de processadores Risc Hibrido da Hitachi focado em dispositivos embarcados, eletrônicos, foi utilizado na industria automobilística e no SEGA 32x, SEGA Saturn e SEGA Dreamcast. Diferente dos tradicionais processadores RISC (como os ARMs por exemplo) que realizam processamento procedural (um processamento de cada vez), os SuperH realizam processamentos em paralelo (vários processamentos simultaneamente).
Visão geral do J-core
Visão geral do J-core
 No dia 30 de Junho de 1999 Linux recebeu suporte ao SuperH (sete meses após o primeiro local de lançamento do Dreamcast que foi no Japão em Novembro de 1998) e até hoje mantem o seu suporte no kernel Linux. Por isso acho que talvez teria sido interessante se o Dreamcast rodasse Linux e não Windows CE. Mas as coisas não são tão simples o quanto achamos, a parte comercial é bem delicada a ser tratada e deve ser respeitado. Como pode ser lido na revista 101 games #11 dreamcast da warpzone (e que inclusive eu tenho essa edição autografada pelo Ivan :) já havia feito acordo com empresas dividindo  em duas equipes (uma no japão e a segunda nos Estados Unidos) para apresentarem dois projetos diferentes e que, é claro, no final das contas, um seria o novo console da empresa. O que ocorreu é que a 3dfx (uma das empresas que perdeu) processou a SEGA. Imagina a SEGA resolver mudar de Windows CE para Linux depois de tudo pronto e tomar mais um processo, só que desta vez da Microsoft. Melhor não né ;)
Clique aqui para obter a edição numero 11 da revista Warpzone 101 games que é a edição especial do Dreamcast
 Com a crise asiática várias empresas foram afetadas, inclusive a Hitachi. Sem muitos detalhes, mas por conta disso, as patentes dos processadores SuperH não foram renovadas e o resultado disso você confere no vídeo abaixo:

 Uma vez que suas patentes caíram em domínio publico, as empresas podem produzir suas próprias versões de SuperH livremente assim como o RiscV e uma das versão open source do SuperH que ganha destaque no mundo é o J-Core. Eu escrevi um artigo chamado "O que é Disposable Computing?" onde explico alguns dos projetos do J-Core que pretendem trazer (inclusive uma versão x86). Já a Core Semicondutor possui sua própria versão de SH2 chamado J-32 (inclusive o artigo "O que é Disposable Computing?" foi onde pela primeira vez mencionei sobre o J32).

 Honestamente eu fiquei impressionado com as características do J32; pois eu tinha condicionado em mente que sim, seria algo melhor do que o SH2, mas não a ponto de ser melhor que certos ARMs como pode ser conferido na tabela abaixo:
Tabela comparativa entre o ARM Cortex-M1, ARM Cortex-M4 e o J32 Core.
Tabela comparativa entre o ARM Cortex-M1, ARM Cortex-M4 e o J32 Core.
 Enquanto o SH2 possuía clock de 29MHz, o J32 possui clock de 150MHz (cinco vezes mais que o SH2) além de suporte a SMP, 8kB de cache de instrução mais 8kB cache de dados por CPU, suporte a Boot ROM, SRAM, MMU (não é esperado que o J2 tenha suporte a MMU), DMAC, DDR controller, dual EMAC, GPIO, dual SPI I/F, dual UARTs, dual I²C I/F e JTAG.

 Quando falamos de J-core, vale também mencionar a Turtle board que é um protótipo de placa inspirado na placa do Raspberry Pi e que teria sido apresentado em eventos esse ano no Canada e no Japão se não fosse o caso que estamos enfrentando. A Core Semicondutor possui também o seu próprio protótipo chamado Jx IoT (como a placa mãe também é open source, todas as empresas tem permissão de produzir suas próprias versões sem a necessidade de autorização).
Jx IoT
Jx IoT
 Se o J32 chegou a esse ponto, imagina o que podemos esperar do J4 ou do J6 e até do J64. Será que o J32 motivará a galera apaixonada pelo SEGA Saturn a criar uma iniciativa de trazer o console de volta a vida em um novo hardware? Quem sabe? Espero que sim.

Um cartucho para Sega Saturn? E o que isso tem a ver com Linux?

Cartucho com o simbolo open hardware
Cartucho com o simbolo open hardware
A comunidade Sega até hoje é muito forte. E desde que fiz o vídeo sobre o processador j-core, venho acompanhando uma comunidade chamada Titan Games Studio que desenvolvem uma engine open source de jogos 2D tanto para Linux, Windows e Dreamcast (Obs.: Os jogos exportados para Linux). O projeto iniciou no Sega Saturn (por isso o nome Titan, por se tratar da maior lua de Saturno, lar do Thanos) e depois passaram a direcionar o foco maior para o belo Dreamcast. E no meio de conversa com esses amigos é que eu acabei descobrindo um cartucho USB para o Sega Saturn.



 Grande coisa... E o que isso tem a ver com Linux? Simples, é um cartucho open source. Esse é um projeto que foi desenvolvido por um finlandês (tinha que ser) para poder transferir dados via porta USB utilizando o sistema Unix-Like (sendo a biblioteca para isso, disponível também para Linux).


 O design do hardware está disponível sob Creative Commons 3.0 e o os componentes do software sob Clausula 2 da licença BSD. A biblioteca libFTDI sob LGPL 2.1 (nenhuma outra versão posterior) e o EPROM sob GPL 2 (nenhuma outra versão posterior).

 E porque alguém iria querer desenvolver games para o Sega Saturn hoje em dia? Porque sim...  É assim que funciona a paixão.

 E se está achando que desenvolver cartuchos e jogos para Sega Saturn nos tempos de hoje seria loucura, ficaria impressionado com o que eu descobri. Acreditem ou não, até hoje na China são produzidos jogos para o Mega Drive em larga escola e os maiores compradores são os russos.

 A segunda coisa que descobri é que o maior colecionador de Mega Drive do mundo mora em Carapicuíba. Para quem gosta do Mega Drive, fica a dica do livro Mega Drive Definitivo que foi produzido pela Warpzone.

Novidades sobre o j-core

Novidades sobre o j-core
Novidades sobre o j-core
 Se chegou distraído e não faz ideia do que se trata o j-core, então eu explico de novo, sem crise. j-core é uma família de processadores inicialmente baseado no SuperH da Hitachi que foi utilizado no vídeo game Dreamcast da Sega, em arcades e também em robos no setor automotivo (sim, esse processador foi utilizado em robos que montam carros). A galera chegou a utilizar o Dreamcast como servidor VPN com Linux.

 Devido se tratar de um Risc hibrido (processadores risc realizam um calculo de cada vez enquanto o SuperH é um risc que realiza cálculos em paralelo), esse processador chegou a ser cobiçado. E depois que a Hitachi perdeu sua patente, então estão produzindo-o novamente na Índia para ser utilizado na IoT e em vários outros lugares. Neste artigo eu explico melhor onde cada um será aplicado.


 No dia 5 de Dezembro, as Turtle boards chegaram ao Canada e algumas estão indo para o Japão. Em Janeiro (especificamente no dia 13 de Janeiro) do ano que vem, irão realizar uma curta apresentação  de 20 minutos na linuxconf.au onde irão explicar por que estão trabalhando no j-core. Ainda há muito trabalho técnico a ser feito, mas parece que irão fazer mais apresentações em outros ventos. Vamos aguardar para ver o que acontece no futuro.

Dando uma olhada na arquitetura dos processadores #4

uma placa do super computador Titan: 4 Opteron AMD (16 núcleos) + 4 NVIDIA Tesla K20X
uma placa do super computador Titan: 4 Opteron AMD (16 núcleos) + 4 NVIDIA Tesla K20X

Além do que acabamos de falar, existem ainda algumas medidas além dos famosos Hertz (Kilohertz, Megahertz e Gigahertz) que estamos obituadas a ver. Por exemplo existe a medida MIPS (Mega Instructions Per Second) que vale a ressalva, não confunda esse MIPS que estamos falando aqui com a arquitetura MIPS da empresa MIPS Technologies Inc. Nesta arquitetura, MIPS significa Microprocessor without interlocked pipeline stages (microprocessador sem estágios de pipeline intertravados). O MIPS que abordamos aqui trata-se de milhões de instruções por segundo. O SH4 do Dreamcast por exemplo fazia 230 a 360 MIPS a 200MHZ. Já um Corei5 da intel faz em torno de 83 mil MIPS a uns 3.3GHZ. E o um FX da AMD faz muito mais de 90.000 MIPS a mais ou menos 3.5GHZ.


FLOPS (Giga Floating-point Operations Per Second) que é uma medida muito usada em computação cientifica fazendo uso do FPU. O desempenho de um supercomputador é medido em FLOPS, e não em MIPS. Daí os caras medem em:
  • kiloFLOPS kFLOPS 103
  • megaFLOPS MFLOPS 106
  • gigaFLOPS GFLOPS 109
  • teraFLOPS TFLOPS 1012
  • petaFLOPS PFLOPS 1015
  • exaFLOPS EFLOPS 1018
  • zettaFLOPS ZFLOPS 1021
  • yottaFLOPS YFLOPS 1024
 As informações sobre um processador podem facilmente enganar os olhos e mente se analisado somente baseado em seu clock interno e externo. O SH4 do Dreamcast já citado anteriormente fazia 1.4 GFLOPS em seus 200 MHz. Então pode ser que você se depare com um processador com clock baixo porém que apresenta um alto desempenho e você simplesmente não sabe o porque. E essa pode ser umas das razões.

Especificações do FLOPS no SuperH

Mais do Titan, os canos de metal transportam refrigeração para o supercomputador.

MOPS (Mega Operations Per Second) é utilizada inclusive na taxa de reprodução de áudio e vídeo ao invés de TOPS (Tera Operations Per Second) de acordo com o livro Digital Signal Processing for Multimedia Systems.



Emulador redream agora disponível para Raspberry Pi 4

Emulador redream agora disponível para Raspberry Pi 4
Emulador redream agora disponível para Raspberry Pi 4
Redream é um trabalho em progresso do emulador do Dreamcast (que como todos sabem, é o console que se tornou a minha paixão) que permite jogar seus jogos favoritos do console em alta definição tanto no Windows, Mac OS X e Linux.

 Essa minha paixão voltou a todo vapor quando passei a estudar sobre o processador J-Core (especificamente o J2 - j4 trata-se do mesmo processador do Dreamcast que está sendo produzindo novamente e que será utilizado em vários ambientes).

 Agora o Redream está disponível também para o Raspberry Pi 4. O que é uma maravilha já que o Raspberry Pi é fortemente vendido em videogames retrô. Confiram o resultado do desempenho do Redream do Raspberry Pi 4:

NÃO SE ESQUEÇA DE SE INSCREVER NO MEU CURSO DE MIGRAÇÃO PARA LINUX.
NÃO ESQUEÇA DE CONFERIR MEU CURSO DE MIGRAÇÃO PARA LINUX E TORNE-SE UM VERDADEIRO PROFISSIONAL EM LINUX

Projeto Titan Games Studio

Quer um game engine open source  com Templates prontos para poder trabalhar no desenvolvimento dos seus próprios jogos? Fica a dica do Titan Games Studio?


ERRATAS:

  1. De acordo com o site da própria Sega, o Dreamcast tem na verdade 26MB sendo 16MB destinado à memória principal, 8MB destinado a vídeo e 2MB destinado ao áudio. O que não deixa de ser pouco hardware para rodar o Windows. Levando em conta também que o Windows rodava no Dreamcast via (digamos) liveCD.
  2. Meu amigo trabalha na IBM e não na Red Hat.

O link para o projeto pode ser conferido clicando aqui

Anuncie no canal Toca do Tux: tocadotux@gmail.com



Linux® é uma marca registrada de Linus Torvalds nos Estados Unidos e em outros países. Para saber mais sobre a marca registrada Linux®, visite o link abaixo:
Linux®

Iniciada produção da Turtle Board


Beleza galera?

Noticia rápida que eu queria passar para vocês. No dia 8 de Maio foi informado que inciaram uma pequena produção (sem pré-venda) da turtle board, a placa mãe para o processador j-core.

Para quem não conhece o j-core e a Turtle board, j-core é uma geração de processadores que estão nascendo baseados nos processadores dos consoles Sega; o Sega 32X, o Sega Saturn e o Dreamcast (os processadores SuperH que foram desenvolvidos pela Hitachi no final da década de 90 como uma segunda geração de RISCs híbridos). Esses processadores foram também amplamente utilizados em áreas fora do mercado de consoles como nas industrias automotivas no Japão.

Devido a crise econômica asiática de 1997, a Hitachi cortou gastos e em 2002 estabeleceu uma nova divisão de microprocessadores junto a Mitsubishi chamada Renesas que não herdou os engenheiros desenvolvedores do SuperH e que também não apresentou interesse em continuar o seu desenvolvimento (até que as patentes expiraram e assim nasceu o j-core).

O criador do projeto uClinux, Jeff Dionne (que é engenheiro de hardware), criou um novo design de processador compatível com o conjunto de instruções do SuperH e o disponibilizou sob a licença BSD em 2015 (hoje, o j-core).

Caso queria saber mais, além dos links que podem ser clicado aqui no artigo, vou deixar o vídeo aqui para poderem assistir:


A primeira geração do j-core é o j2, que é compatível com o sh2 (processador do Sega Saturn). O Linux, o gcc, binutils e a biblioteca Musl possuem suporte ao j-core out of the box. O QEMU possui suporte ao sh4, mas necessita do seu próprio kernel (ainda).
há código fonte, binários, kernel do Linux já compilados patch para o kernel 4.8 disponível para download no site oficial.
O pessoal anda bem ocupado. Rob Landley mesmo andou trabalhando em um substituto para o Aboriginal Linux (chamado mkroot, que utilizará o toybox ao invés do busybox).

A comunidade Debian já trabalha para ter suporte ao j-core e é previsto que o projeto J-Core possua suporte total ao conjunto de  instruções do SH4 no processador J4 até 2017.

Série FX da AMD esquentando como um vulcão?

Em meados do ano passado eu fiz um vídeo explicando sobre a série de processadores FX da AMD devido a comentários que eu vi nas redes sociais. É que me chama a atenção a opinião que as pessoas formam sem ao menos um pouco de pesquisa (e que chega a ser intrigante).

Tenho certeza que tem gente que vai me dizer:
"Ah, mas você está defendendo o FX porque você tem um".
E a resposta para isso é que sim; e não sim para estou defendendo a série e FX, e sim para eu tenho um FX 8300. Mas já tive também um Pentium, um Pentium 3, um Pentium 4, dois Celerons, um Athlon XP, quatro Core2Duo, um Atom, um Corei3 e dois FX sendo o 6300 e o 8300 (Agora faça as contas e veja se já tive mais processadores da Intel ou da AMD). Também já tive dois um ARM (no Raspberry Pi e no Endless Mini sem contar os dos smartphones que temos fácil acesso hoje), um PowerPC e conto nesta lista um SH4 (através do meu Dreamcast que posso rodar Linux e que estão voltando a sua produção para a IoT e para a computação descartável).


E mesmo depois de mostrado quais processadores já tive, vai ter gente parecendo múmia afirmando a mesma coisa...

OK, mas o que me levou a escrever este artigo foi ver o pessoal falar a forma como o FX esquenta ao ponto de parecer estar entrando em erupção. Chega a ser engraçado ler esse tipo de comentário.

Galera, até mesmo os processadores da Intel esquentam muito. A questão era aquele Cooler Box (cooler que vem em conjunto com os processadores) da Intel que eram horríveis até mesmo na questão de como a gente conectava à placa mãe:


Eu detestava (e ainda detesto) tanto aquele cooler que por fim acabei comprando um da Cooler Master e me desfiz do cooler box. E até hoje a Intel insiste nesses coolers que vem por padrão. Esse cooler que comprei sim foi bom, solucionou meu problema na questão de aquecimento do processador e de até mesmo parafusá-lo na placa mãe.


Isso acontece também com o FX. O cooler que vem por padrão na caixa do processador FX é um cooler pequeno (mais ou menos dois dedos ou menos de altura como o que se vê nas imagens abaixo), vinha uma folha de cobre embaixo (é, um cooler foliado a cobre...) e que uma ventoinha fraca que para renderizar um vídeo chegava a esganá-la. E é isso que vai em cima de um processador com 6 a 8 núcleos...


Se em um processador com dois núcleos operando a 3.0Ghz esquenta, não iria acontecer a mesma coisas com um processador com oito núcleos operando a 3.3Ghz? Esse foi um erro cometido também pela AMD na geração FX (e é até hoje o mesmo erro da Intel nos CoreiX). Foi onde eu comprei um cooler da CoolerMaster (sim, gosto da marca mas ainda quero um BeQuiet) para o meu FX que solucionou o problema do calor:



Os únicos momentos que meu processador esquenta (MESMO, mas não tanto como exageram) é quando vou renderizar os vídeos para o canal, mas até aí normal. Quando jogo esquenta um pouco, mas nada de tão quente, nada do tipo:
noss, pega o ventilador lá e uns cubos de gelo, coloca na frente do ventilador direcionando para o computador se não  vai derreter.
Esse cooler foi projetado tanto para o soquete AM3+ (AMD FX) quanto para o soquete 775 (Core2Duo). Bom, por hora é só; só quis debater esta questão de acharem que os processadores da AMD são um ferro de passar roupas. Hoje o cooler box da AMD valem muito a pena; são bem dimensionados e dissipam bem o calor, mas os anteriores não valiam a pena.

Novo patch para a newlib corrige build para M class semihosting

newlibe
newlibe
 Newlib é a biblioteca C mais indicada por várias empresas e projetos para o uso de embarcados. essa bibliteca já apareceu na série Muito além do GNU e em um vídeo sobre um sistema operacional usado como emulador do Dreamcast.


 Tamar Christina da empresa ARM descobriu acidentalmente que os núcleos M class não possuem suporte a v2 mixed mode, o que causa um erro de assembler. Com isso,  Tammar enviou um patch que corrige o problema do patch anterior (não o patch mencionado aqui anteriormente) em multi-lib em qualquer M class build que utilizam instruções semihosting.


 O patch enviado por Tamar foi aceito por Corina e já está disponível na newlib.

Microsoft faliu a Sega?

open-sonic
baixem o jogo =)
 Beleza galera?

 Ontem eu publiquei esse bate papo com vocês se a Microsoft faliu a Sega ou não. Realmente é um fato até curioso se levarmos em consideração que a Sega faliu exatamente bem no ultimo console lançado pela a empresa em que a Microsoft trabalhou  em conjunto com a Sega no sistema embarcado do console. Mais um fato curioso, foi aí que a Microsoft aprendeu a realmente trabalhar na plataforma de consoles (e lançou o seu...).
Se repararem, o joystick no Xbox tem características do do joystick do Dreamcast.
 Mas vamos ao fatos no vídeo logo abaixo:


Quero deixar esse comentário feito pelo Guiness Walber que é muito interessante:

 E literalmente a Sega não faliu, ela só não atua mais na parte de consoles, ficando somente com a parte de desenvolvimento de jogos. Uma pena, pois a Sega tinha consoles muito bons e ela poderia voltar a esse mercado (o que eu iria gostar batsante =)

Mas fica aí uma coisa a se pensar. Agora a Sega possui o Mega Drive Classic Game Console de 16 bits com 100 jogos já incorporados ao console (melhor do que o da Nintendo que é de 8 bits e sem jogos (poderia ter, não é Nintendo?), a Tectoy lançou novamente o Mega Drive e o Master System (deu a entender que a Tectoy lançará o Sega Saturn novamente =) e a Sega incentiva incentiva fazer coisas sobre o Sonic. Isso é respeito pelo publico (mais ou menos seguindo os conceitos do mundo open sourece). parabéns pela iniciativa, Sega.

Isso tudo me despertou a curiosidade de saber se a Sega voltará ao ramo dos consoles. Eu particularmente espero que sim.

aproveitem-e-baixem-o-jogo-opensonic
Open Sonic, o Sonic open source =)
 Aproveitem e baixem o jogo Open Sonic

Newlibe poderá receber novo patch que trará melhoria em seu desempenho

Newlibe e Red Hat
Newlibe e Red Hat
Wilco Dijkstra da arm.com enviou um patch para a sourceware que se aceito, irá melhorar significativamente o desempenho do memmem que é uma extensão que localiza a primeira ocorrência apontada na memória e que pode ser muito mais rápida que o strstr. Esse patch fornece um novo algorítimo Horpool modificado. Newlib é uma biblioteca C para uso em sistemas embarcados tendo um conglomerado de várias partes e sendo distribuído apenas em forma de código fonte. Essa biblioteca já fez parte da série Muito além do GNU e no vídeo do DreamShell que é um sistema operacional baseado em Unix (não sabem afirma qual mas descobrir que é um port do sistema operacional KallistiOS) que a galera da comunidade Sega gosta de utilizar para emular o Dreamcast:


 O ganho de desempenho oscila entre 6.6 vezes em texto americano no AArch64 e o tamanho foi otimizado sendo reescrito do zero e obtendo um ganho de 2.7 vezes (sim, o tamanho do código influencia no ganho ou perda de desempenho).

 Este patch está sob a licença Cláusula 3 BSD SPDX e está sendo analisado para a aprovação. Se for aceito, a newlib ganhará bem mais em desempenho do que o mencionado, os desenvolvedores de embarcados agradecem e a comunidade Sega também. vamos torcer para que seja aprovado.


Marcadores

A pior história sobre Linux que já ouvi (6) A.I (2) ambiente gráfico (19) AMD (14) analise (10) Andriod (17) android (9) Apple (1) arm (5) artigo (5) aws (1) bc (24) benchmark (6) BetrFS (1) biglinux (1) blackhat (1) BSDs (36) btrfs (32) bugs (2) Caixa de Ferramentas do UNIX (18) canonical (1) canto do Diego Lins (2) certificações Linux (7) Código Fonte (53) comandos (34) comp (1) compressores (9) consoles (1) container (8) CPU (20) cracker (1) criptografia (5) crowdfunding (9) cursos (24) daemons (14) Debian (31) desempenho (2) desenvolvimento (105) desktop (19) DevOps (3) DevSecOps (4) dic (1) Dica de leitura (91) dica DLins (2) dicas do Flávio (27) Dicas TechWarn (1) diet libc (4) diocast (1) dioliunx (3) distribuições Linux (15) Docker (13) DragonflyBSD (24) driver (2) dropbear (3) ead Diolinux (2) edição de vídeo (5) embarcados (1) EMMI Linux (4) emuladores (9) endless (5) English interview (3) Enless OS (2) entrevista (17) espaço aberto (82) evento (6) facebook (1) Fedora (11) filesystem (82) financiamento coletivo (2) fork (4) fox n forests (4) FreeBSD (23) Funtoo Linux (13) games (96) garbage collector (1) gerenciadores de pacotes (4) glaucus (8) GOG (3) google (9) gpu (4) hacker (2) hardware (104) hash (1) helenos (3) I.A (1) init system (13) Intel (16) inteligencia artificial (2) IoT (1) ispconfig (1) jogos (40) kde (1) kernel (144) lançamento (64) leis (1) LFCS (1) libs (2) licenças (10) Linus (16) linus torvalds (2) Linux (196) linux foundation (3) linux para leigos (1) live (4) lkgr (1) LPI (8) LTS (1) Mac (1) machine learning (1) matemática (9) mesa redonda (27) microcontroladores (1) microsoft (6) microst (1) muito além do GNU (183) musl (3) não viva de boatos (9) navegadores (5) NetBSD (7) newlib (1) nim (13) nimlang (5) nintendo (2) novatec (17) novidades (1) nuvem (1) o meu ambiente de trabalho (3) off-topic (12) ONLYOFFICE (5) open source (85) OpenBSD (8) OpenShift (1) oracle (1) os vários sabores de Linux (46) padrim (2) palestras e eventos (5) partições (6) pentest (8) performance (1) pipewire (1) plan9 (3) playstation (1) processadores (30) professor Augusto Manzano (11) Programação (72) promoção (1) propagandas com Linux (8) ps4 (1) real-time. (1) Red Hat (23) redes (4) resenha nerd (5) Resumo da Semana do Dlins (2) resumo do Tux (19) retrospectiva Linux (1) risc-V (14) RISCV (13) rtos (2) runlevel (2) rust (16) Sega (1) Sega Saturn (1) segurança digital (28) servidor web (2) servidores (3) shell (13) shell script (10) sistema operacional (26) skarnet (2) smartphones (3) Software livre e de código aberto (150) sorteio (3) Steam (11) Steam no Linux (9) supercomputadores (4) suse (7) systemd (9) terminal (91) terminal de comandos (22) toca do tux (1) toybox (32) tutorial (6) Tux (3) ubuntu (1) unboxing (7) UNIX (17) UNIX Toolbox (13) vartroy (1) vga (1) virtualização (3) vulnerabilidade (7) wayland (5) web (1) whatsapp (1) whitehat (1) Windows Subsystem for Linux (2) wine (14) WoT (1) yash (1) ZFS (16) zsh (3)