Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von sylvio
Thema: Hohe und lange Laufzeiten bei großen mehrdimensionalen Arrays
Am im Forum: Rund um die Programmierung

Zitat
multi-dimensionale Arrays sind in .NET per Design sehr langsam, da für jeden Zugriff ein Methoden-Aufruf durchgeführt werden muss (zusätzlich zu Bound-Checks).
Wesentlich performanter sind sz-Arrays (single dimensional zero based), da bei diesen der JIT direkte Speicherzugriffe -- also ohne Hilfs-Methoden -- erzeugt.
Für mehrdimensionale Tensoren kommen somit "jagged Arrays" in Frage. D.h. float[][][]

Achte dann beim Zugriff auf die Elemente darauf -- v.a. per Schleife -- dass zusammenhängende >Daten im Speicher angesprochen werden (memory locality und cache friendlyness).
Interessant - Danke . Ja muss ich mal mir mal in Ruhe anschauen (wenn die Anwendung erstmal soweit läut; ist halt wieder mal alles dringend^2). Ich komme eigentlich aus der c/c++/asm-welt; C# machte ich bisher immer nur "wenn zwingend verlangt" :/ Da ich solche "grossen" arrays bisher immer nur unter c/c++ machte, dachte ich schon das es durch evtl. c# und zig extra checks bedingt war :/

Zitat
Wie ist das zu verstehen? Bzw. anders rum: wenn du die Exception nicht handeln kannst, so lass
es -- dann bekommst du den Fehler wenigsten frühzeitig mit => "fail early".
Ja, war an der Stelle halt noch alles "tricky" programmiert. Ein try/catch hatte hier "unbemerkt" "falsch" ausgelöst (schon vom code her richtig aber in der falschen schleife), nur weil ich da das "i" und "j" im Array verdreht hatte.
Ist halt wie meistens.. "der Bug sitzt idR vom Bildschrim" :-)


Danke nochmal an alle...



S.

Thema: Hohe und lange Laufzeiten bei großen mehrdimensionalen Arrays
Am im Forum: Rund um die Programmierung

-> DANKE!!!
Herje kann es fast nicht glauben; natürlich mein Fehler :)
Ich hatte ein j mit i "verdreht"; damit warf der zig Exception bei der Array-Zuweisung; die ich noch nicht vollständig abgefangen hatte. Hatte es daher nur nicht mitbekommen...


S.

Thema: Hohe und lange Laufzeiten bei großen mehrdimensionalen Arrays
Am im Forum: Rund um die Programmierung

Die kommen aus rund 1000 einzelnen Datenfiles, die jeweils float-Punkte enthaten.
Aber das (laden und parsen) kann es "eigentlich" nicht sein. Denn wenn ich die Zeile mit der ersten Array-Zuweisung raus nehme (nur diese), dann ist die Lade-Zeit (einschliesslich des parsens der files) sofort unter ~1sec.
Gut, muß ich mir mal ein Testprojekt damit erstellen und dort versuchen mi dem Array zu "experimentieren". Der Effekt ist jedenfalls sehr mysteriös :/


S.

Thema: Hohe und lange Laufzeiten bei großen mehrdimensionalen Arrays
Am im Forum: Rund um die Programmierung

Hallo Zusammen,

Ist es "nornal" das große float-Arrays (~300k elemente) im typ: "float a[,,] " unter VS2017 (unter 64bit) bei c# beim ersten Zugriff so extrem höhere Zugriffzeiten haben? Ich kann da auch keinen großen Unterschied zwischen 32 und 64bit merken; ebenso macht ein Ausschalten des debugs quasi fast nichts aus.

Ich habe das so definiert/allokiert:
float[,,] yy = new float[MAX_y, MAX_s, MAX_phi];

Wenn ich dann ~300'000 zugriffe haben; also jedem feld wert zuweise; dauert dies (1 thread) in Summe rund 90sec. Ohne Array-Wert zuweisen aber nur ~1sec. Wenn ich das selbe testweise mal unter c++ mache; dauert das dem gegenüber aber nur knapp 2sec (also nicht mal Ansatzweise 90sec).
Das "komische" ist; wenn ich dann (unter c#) mit dem Array arbeite, dann sind die Zeiten auch wieder fast normal. fast so als wenn der bei jeder ersten Zuweisung in einem Array immer noch "intensive bondary-checks .." macht..


MfG
S.

Thema: Gigabit Anwendung
Am im Forum: Netzwerktechnologien

Du greifst doch sicher nicht direkt auf die NIC direkt zu sondern über den Treiber. Die Karte hat auch einen Buffer; den der Treiber steuert. Wenn es zuviel Traffic ist; notfalls Jumboframes nutzen. Klar Windows ist kein Echtzeit-Betriebsystem; müsste man wissen was Du machen willst. Auch kommt dann noch WinpCap hinzu; bei hohem Traffic und kleiner MTU usw. wird das so (und normaler HW) nicht gehen (nicht umsonst wird bei besseren Routern in Hardware geroutet)...


S.

Thema: GUI ist träge; bei der Anzeige großer Bilder
Am im Forum: GUI: Windows-Forms

hi

Evtl. eine Art "Voransicht" (mit geningerer Auflösung; entspr. des Bildschrims) im Hintergrund generieren; klar das darf natürlich nicht im GUI-Thread passieren...

S.

Thema: Umstieg von VS2005Pro auf VS2010Express
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Naja ist die Frage was Du davon brauchst.
fehlen wird vermutlich in den Express-versionen :
- Setups generieren
- Compact Framework
- Einbinden von Modulen(Quellcode-Verwaltung etc.)
- MFC
- größenbeschränkungen?

SharpDevelop ist evtl. eine andere Lösung für Dich?


S.

Microsoft Visual Studio

Thema: Serielle Schnitstelle: TxD dauerhaft auf 1 setzen
Am im Forum: Rund um die Programmierung

Wie willst Du da was senden können, wenn tx permanent "1" ist? Vermutlich verbraucht der Sensor oder was das ist so wenig, dass der Strom von TX ausreicht. Du musst vermutlich nur ständig/oft genug die Werte abfragen...


S.

Thema: Netzwerk Cat 7 60m, davon 25m Paralel zu Starkstrom
Am im Forum: Smalltalk

Zitat von der-schlingel
Möglich ist es schon, da die Folie nur die eigene Strahlung abschirmt. Eine andere Möglichkeit ist auch, dass du zu enge Kurven gelegt hast. Cat-7 ist zwar auf max. 100m ausgelegt aber das auch nur unter optimalen Bedingungen.
.

Die Verdrillung ist aber richtig; will sagen Du hast beim anschließen die Farb-Paarungen beachtet?
Hast Du mal mit 10Mbit probiert?
Suche Dir notfalls einen de das mal mit dem entspr. Meßgerät mit HF durchmessen kann (die Flunke-Dinger sind recht teuer; kauft man normalerweise nicht selber für die 1..2 messungen); dann weiß Du auch welche Rate das Kabel kabb und welche Ader falsch angeschlossen wurde...


S.

Thema: Projekt veröffentlichen mit automatisch erstellter Datenbank: Exe-Datei funktioniert nicht
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Der Fehler steht doch da?

Zitat
Fehler beim Anfügen einer automatisch benannten Datenbank für die Datei C:\Users
\.....xxx....\AppData\Local\Apps\2.0\Data\7NGYHHC3.J61\MMM618DC.AHQ\wind..tion_23e972940c358e27_0001.0000_e904c9a30ad988d5\Data\TEST.mdf. Eine Datenbank mit diesem Namen ist bereits vorhanden, die angegebene Datei kann nicht geöffnet werden, oder sie befindet sich in der UNC-Freigabe.

Eine solche Datenbank "test.mdf" scheint also schon vorhanden zu sein, kann die nicht neu anlegen...

S.

Thema: C# Programm auf Rechner ohne Matlab zum laufen bringen
Am im Forum: Rund um die Programmierung

Das wird Dir so nicht gelingen. Es bedarf dann dazu immer der Runtime-Libs von mathlab, die Du so wegen der Lizens nicht weitergeben darfst...
Du kannst höchstens mit dem MathLab-Compiler versuchen das neu zu linken (der unterstützt aber soweit ich informiert bin nur c/c++ ?):
http://www.mathworks.com/products/compiler/
Allerdings hatten wir in der Vergangenheit damit auch immer so unsere Probleme (der wollte dann trotzdem noch immer "ab und zu mal" irgend welche MathLab DLLs); muß man probieren. Im schlimmsten Fall musst der andere Rechner halt auch eine Mathlab-Lizens bekommen... :(




S.

Thema: Original-Quelldateien von Webgrafiken kostenlos an Kunden rausgeben?
Am im Forum: Smalltalk

Es kommt drauf an, was Du mit dem Kunden vereinbart hast und
was das Werk an sich für eine Schöpfungshöhe hat (im Normalfall sollte er es also so nicht automatisch mit bekommen)...
Links :
http://www.frag-einen-anwalt.de/forum_topic.asp?topic_id=69827&



S.

Thema: Command and Conquer 4 verkaufen?
Am im Forum: Smalltalk

Hat zwar nix mit c# zu tun ;/

http://www.amazon.de/gp/forum/cd/discussion.html?ie=UTF8&cdForum=Fx5I95ITP0TQV8&asin=B002WRY4C4&cdThread=Tx18SQ2YPTM7FFZ

EA ist in der Vergangenheit durch den Steam-"Kopierschutz" schon mehr als negativ aufgefallen; ich pers. würde deratigen "Mül"l nicht bei mir auf dem Rechner installieren wollen..
Vor Gericht Recht haben und Recht bekommen sind 2 getrennte Sachen; viel Spass beim klagen...

S.

Thema: Hat wer-kennt-wen.de eine öffentliche API?
Am im Forum: Smalltalk

Suche mal nach OpenSocial

- http://netzwertig.com/2008/01/30/zn-lokalisten-ab-dienstag-mit-newsfeed-und-opensocial-integration/
- http://www.heise.de/newsticker/meldung/OpenSocial-1-0-veroeffentlicht-955569.html
- http://blog.opensocial.org/2010/03/opensocial-10-spec-published.html


S.

Thema: Visual Studio 2008 stürzt beim Hinzufügen von ToolStripButtons ab
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Hast Du das SP1 für VS2008 eingespielt?
Notfalls mal die Settings zurücksetzen (devenv.exe /resetsettings).

S.

Thema: en.wikipedia.org: server nicht gefunden?
Am im Forum: Smalltalk

Nö, nur erste Auswirkungen der DE/EU-WebZensur ;-)

Die haben offensichtlich nur eine zeitlang ihre DNS-Zone etwas korrupt gehabt. Ist bei eiigen DNS-Caches noch falsch drinne. Die wikipedia-dns'e antworten aber schon wieder richtig. Sollte also spätestens innerhalb von 24h wieder gehen...


S.

Thema: Mit MonoDevelop direkt und MacOs Gui erstellen
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Zitat von kkirchhoff
Hallo,
... noch nicht herausgefunden, wie ich einen GuiDesigner unter Mac ....


http://monodevelop.com/FAQ

Is there a Visual Designer for ASP.NET?

For all practical purposes, no.
There was an experimental ASP.NET Visual Designer called AspNetEdit built in the Google Summer of Code 2005, and integrated into MonoDevelop in 2006. It is present in MonoDevelop SVN, and interested parties are welcome to build it and experiment with it, but it is completely unsupported.


S.

Thema: Registry Schlüssel für CHM-Files
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\ItssRestrictions
Das ist eine Sicherheitsmaßnahme von MS ;)

Zitat von chrismoe
Ja, es sollte gehen. Prinzipiell hat der HKCU Vorrang zu HKLM. Soll heißen, falls ein Schlüssel in beiden Sections definiert ist, hat HKCU Vorrang. Kannst ja einfach mal testen.

Also diesen Bereich konnte ich zumindest unter Win7 mit einem User-Prozess nicht neu beschreiben. Würde mich auch wundern wenn diese Restriktion durch den Nutzer und den HKCU-Trick wieder aufgehoben werden kann. Das wuerde ja sämtliche Sicherheitseinstellungen aufhebeln..

Die eine CHM-Datei kann man nicht automatisiert lokal "irgendwo hin " kopieren? Dann kann die User ja wieder öffnen...


S.

Thema: http anfragen zeitversetzt senden
Am im Forum: Netzwerktechnologien

Zitat von Bow
Sorry wenn ich mich vielleicht missverständlich ausgedrückt habe..
ja, man kann ja so nur "raten" :) Evtl. so was wie eine simple Software-Firewall; also PInvoke-unktionen wie PfCreateInterface, PfAddFiltersToInterface usw. ? Allerdinsg ist so was mit .net so eine sache (kann man vermutlich nicht im .net direkt lösen) ;)

http://www.codeproject.com/KB/IP/packetfilteringnet.aspx


S.

Thema: Bitwert einer Variable zuweisen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Zitat von talla
In C# hast du es jedenfalls nicht gesehen...

Naja evtl. meint der basic (z.b. "&B10100010")? Ist zumindest ähnlich...

S.

Thema: Client Server Chat Mit Kontaktliste
Am im Forum: Netzwerktechnologien

Zitat von Womanizer
Wie kann ich denn die IP ändern ??? und dem Chat Client die Server IP zuweisen...

Hab auch etwas angst das die Lehrer das finden dass wir es hier kopiert haben.

Also wenn das eine Hausaufgabe ist solltzest Du das schon alleine (bzw. mit der Lehrkraft zusammen) lösen. Ansonsten - die Sache mit der IP ist auch gross auf der Webseite beschrieben (ist also im quellcode).

S.

Thema: Client Server Chat Mit Kontaktliste
Am im Forum: Netzwerktechnologien

evtl. solltest Du auf ein bestehendes projekt aufsetzen; z.B. http://69.10.233.10/KB/IP/TCPIPChat.aspx oder http://www.codeproject.com/KB/IP/ykw1.aspx usw.
Eine andere möglichkeit wäre einen irc-client zu nehmen/selber anzupassen und den auf eienn irc-server connecten (den kann man auch lokal auf dem server betreiben).


S.

Thema: 64 Bit oder 32 Bit Prozessor?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Evtl. so was in der Art:


using System;
using System.Runtime.InteropServices;

class SystemCheck
{
    static bool Is64Bit
    {
        get { return Marshal.SizeOf(typeof(IntPtr)) == 8; }
    }
}



s.

Thema: Millisekunden anzeigen/speichern unter WindowsMobile6
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

System.Environment.TickCount bzw DateTime.Now.Ticks mal probiert?
S.

Thema: Welche Programmiersprache bietet "===" an?
Am im Forum: Rund um die Programmierung

$a === $b
Gibt TRUE zurück wenn $a gleich $b ist und beide vom gleichen Typ sind (seit PHP 4).

http://de.wikipedia.org/wiki/Vergleichsoperator

S.

Thema: DataGridView als Quelle für DataTable
Am im Forum: GUI: Windows-Forms

Wie schon gesagt wurde, DGV an eine Datenquelle binden; dann klappt sogar die Sortierung usw.


S.

Thema: Visual Studio vs. Visual Studio Express (IDEs)
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Ahm.. ist doch?

http://www.microsoft.com/germany/visualstudio/products/features.aspx

s.

Thema: Barcode Programmierung
Am im Forum: Rund um die Programmierung

Zitat von JBHAMMER
was brauche ich um BArcode zu entziffern also das der BArcode über Kamera zum Beispiel eingelesen wird und ich diesen dann erkennen kann was da hinter steckt. Was brauche um soetwas zu Coden.

Wenn das "z.b." auch ein Barcode-Scanner (metrologic usw.) ist, dann brauchste dafür fast nix coden. Der macht das quasi alles automatisch (muß man ihm nur 1x per konfig sagen welchen Code er können soll).
Man steuert dann im Prinzip nur eine rs232 an; bzw. die Barcodes kommen parallel mit er Tatstaur rein (HIL). Das ist i.d.R. die billigste und scnellste Lösung ;) Du kannst natürlich auch z.B. mit Intermec CK3 Geräten usw. an die Sache rangegen...
Die Frage ist was willst Du machen und was darf es kosten... ;)


S.
p.s.
Alternativ unter z.B. http://www.qsbarcode.de/ gibt es eine freie Lib für Code39. Die haben auch eine API für andere Codes (dann aber kommerziell; siehe http://www.qualitysoft.de/index.html?/de/produkte/qs_barcode.htm ).

Thema: HTML GET funktioniert dann nicht mehr?
Am im Forum: Web-Technologien

Zitat von Bunnychecker
1. die Loginfunktion auf "LogIn"
2. hole ich mir den Quelltext einer URL, wofür man Cookies benötigt mit "GetHtml"
3. mache eine Postanfrage mit "GetHtmlPost"
------
4. ...

Soweit funktionieren die Funktionen alle, jedoch, wenn ich jetzt nach dem Aufrufen von "GetHtmlPost" wieder "GetHtml" aufrufe um den Quelltext einer anderen Seite zu bekommen, bleibt er hängen und läd die Seite nicht mehr.

Hast Du mal versucht über den Debugger das gethtml zeilenweise abzuarbeiten? Dann müsstest Du ja sehen wo der genauer hängen bleibt...


S.

Thema: RS232 Prüfen ob Gerät verbunden ist
Am im Forum: Rund um die Programmierung

Zitat von Joetempes


SerialPort.IsOpen

Das funktioniert doch dann nur, wenn die rs232 auf dem PC schon geöffnet wurde, was diese ja hier noch nicht ist? Bei rs232 besteht ohne diese zu öffnen und zu prüfen soweit keine Möglichkeit festzustellen, ob da schon etwas dran hängt. Das wird halt von der Schnittstelle nicht unetrstützt. Also öffnen (mit den nötigen EInstellungen) und prüfen ob ein Gerät antwortet.

S.