| Internet Allgemein Flatrates, Webspace, Protokolle und alles rund ums Internet hier rein. |
Diskussion: Socketprogrammierung im Forum Internet Allgemein, in der Kategorie Web, Network & Multimedia Palace; Anzeige Zitat: Zitat von Hackse die sich nur in Binärcode abbilden lassen (z.B. Kernelmodule). Sing# für Singularity ist Managed Code, ...
![]() |
| | #16 (permalink) | |
| Senior Member Registriert seit: 13.07.08 ![]() ![]() ![]() Likes: 85 | Anzeige Sing# für Singularity ist Managed Code, d.h. Bytecode, wird per VM interpretiert. Und der Kernel ist im Wesentlichen in Sing# geschrieben Zitat:
__________________ "It is the human race! The deterioration of the spirit of man. Man undermining himself, causing a self-willed, self-imposed, self-evident self-destruction."+++ BREAKING +++ Troll ertrinkt im Planschbecken +++ | |
| | |
| | #17 (permalink) | ||
| Registriert seit: 31.07.06 ![]() Likes: 32 | Zitat: Auch an diesem Beispiel sieht man sehr schön, dass skriptbasierte Webserver wie Tornado zurecht intern auf Binärcode (in diesem Falle von epoll) zugreifen um simultane Verbindungen möglichst performant zu verwalten (bei BSD ist es kqueue). Zitat:
| ||
| | |
| | #18 (permalink) | |
| Moderator ![]() Registriert seit: 20.07.05 ![]() ![]() ![]() ![]() ![]() ![]() Likes: 202 | Bitte kein Geflame über "real man" Programmiersprachen. Ihr könnt dazu gerne einen eigenen Thread aufmachen OT: Zitat:
![]() Wobei man bedenken sollte, dass es in den "realen" Anwendungen oft genug nicht nur um reine Berechnungen geht (sondern auch Verarbeitung/Speicherung und "Zurverfügungstellung" von Input/Daten) und viele "Scriptsprachenbibliotheken" in C implementiert sind, so dass primitve Operationen auf diesen Datentypen (Hashmaps, Listen, Stringsuche usw) nur gewrapte Aufrufe der C-Bibliothek sind. Reine Numbercruncher sind daher sowas wie "Microbenchmarks". Es wäre also schön, wenn es nicht nur einseitige "berechne Pi/Primzahl &Co" Aufgaben wären, sondern auch vielleicht "parse Datei X und gebe dazu irgendwelche Statistiken aus" Ich würde im übrigen behaupten, dass ANSI-C auch bei weitem nicht so schnell ist. Wer real exisitierende MD5/SHA1 Bruteforcer anschaut: Distracted: SHAbr update, I passed 60 Mhashes/s sieht, dass der Code dank Macros quasi "Meta-Assembly" entspricht, bei dem der Compiler nur noch die jeweiligen XMM Register "frei" vergeben darf Allgemeines imho: Man sollte immer zwischen "prinzipiell/theoretisch" und "praktisch/wie es tatsächlich ausschaut" unterscheiden In der Praxis sind Teile der "0815" C Anwendungen nicht selten langsamer als "0815" Pythonanumsetzung, einfach weil der C "Programmierer" meint, das Rad neu erfinden zu müssen und/oder unpassende Umsetzungen wählt (weil z.B die Datenstrukturen nicht in der Standardbibliothek vorhanden sind) und der Scriptsprachler einfach auf bestehende Bibliotheken zurückgreift ("Batteries included" - sei es HTTP Reader, XML-Parser oder Dictionaries/Sets, die auf einer soliden, getesteten usw. C Bibliothek basieren). Speicherverwaltung ist ein Thema für sich - nur weil man den Speicher selber manuell alloziert und freigibt, wird das Programm dadurch nicht effizienter oder schneller (wie z.B ein while-Loop, der mittels recv Daten empfägt und dabei jedesmal den Buffer mittels realloc um 1 Byte erweitert )
__________________ Noch mal, für alle Pseudo-Geeks: 1+1=0. -> 10 wäre Überlauf! Selig, wer nichts zu sagen hat und trotzdem schweigt. Geändert von CDW (18.01.12 um 17:23 Uhr) Grund: Rechtschreipunk und Formulierung | |
| | |
| | #19 (permalink) | |
| Registriert seit: 31.07.06 ![]() Likes: 32 | Code: Sing# für Singularity ist Managed Code, d.h. Bytecode, wird per VM interpretiert. Und der Kernel ist im Wesentlichen in Sing# geschrieben Aber selbst wenn Singularity und Konsorten man richtig ausgereift sind, warten wir mal die Performance ab und schauen uns die Benchmarks an. Zitat:
| |
| | |
| | #20 (permalink) | |
| Registriert seit: 31.07.06 ![]() Likes: 32 | Zitat:
Der Performance-Vergleich zweier Sprachen sollte sich grundsätzlich auf identische Algorithmen beziehen. Wenig Sinn macht das Ganze z.B. wenn man in zwei Sprachen Algorithmen abbildet, die verschiedenen Komplexitätsklassen genügen und dann die Performance vergleicht. Es lassen sich also entweder identische Algorithmen in verschiedenen Sprachen vergleichen oder verschiedene Algorithmen in der selben Sprache (einfach um zwei Algos zu vergleichen, z.B. Heapsort vs. Quicksort). Eine Mischform aus beidem macht IMHO wenig Sinn. Genug OT von mir für heute. | |
| | |
![]() |
| - Anzeige - | |
| |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Socketprogrammierung C,Problem mit accept() | sw33tlull4by | Code Kitchen | 3 | 01.09.07 19:53 |
| Socketprogrammierung mit Dev C++ - "ws2_32.lib" verlinken... | link | Code Kitchen | 1 | 24.11.04 12:42 |